Как получить следующий или предыдущий идентификатор атрибута в jQuery? - PullRequest
7 голосов
/ 22 марта 2011

У меня есть следующий код

<a class="getty" id="1" href="/...">One<./a>
<a class="getty" id="2" href="/...">Two<./a> 
<a class="getty" id="3" href="/...">Three<./a>

Когда я нажму на левую или правую, мне нужно будет получить предыдущий идентификатор.
Пример: если я на id="2", мне нужно получить id="1", если я нажму слева.

$(document).keydown(function(e){
    if (e.keyCode == 37) {
       $('.getty').attr("id");
       return false;
    } });
    if (e.keyCode == 33) {
       $('.getty').attr("id");
       return false;
    } 
});

Как я могу это сделать?

Спасибо

Ответы [ 3 ]

10 голосов
/ 22 марта 2011

Получить предыдущий идентификатор при нажатии на ссылку.

$('.getty').click(function(e) {
    e.preventDefault();
    var x = $(this).prev().attr('id');
    alert(x);

});

Вы можете сделать то же самое для следующего, используя функцию next()

Проверьте рабочий пример на http://jsfiddle.net/H3hdy/

1 голос
/ 22 марта 2011

Как упомянул GregInYEG, вам нужна функция jQuery next, но, поскольку вы используете ключи, связанные с документом, вам также потребуется способ отследить, какая из них является текущей.

1 голос
/ 22 марта 2011

Вы можете использовать функцию jQuery next , чтобы получить следующего брата, и prev , чтобы получить предыдущего брата.

...