JQuery следующий () для галереи - PullRequest
0 голосов
/ 08 апреля 2011

Я создаю своего рода галерею лайтбоксов самостоятельно, но у меня проблема с загрузкой следующих и предыдущих изображений $("a.lightbox").click(function (e) { var a = $(this).next().attr('href'); alert(a); }); Как видите, эта штука не работает, и мне нужно href-содержимое следующего элемента. Мой HTML выглядит примерно так:

<ul class="listing">
        <li><a href="imgs/eli.jpg" id="1" class="lightbox"><img src="thumbs/eli_t.jpg" width="150" height="100" class="images" /></a></li>
        <li><a href="imgs/ggallin.jpg" id="2" class="lightbox"><img src="thumbs/ggallin_t.jpg" width="150" height="100" class="images" /></a></li>
        <li><a href="imgs/jontarata.jpg" id="3" class="lightbox"><img src="thumbs/jontarata_t.jpg" width="150" height="100" class="images" /></a></li>
        <li><a href="imgs/macka s tatuirovki.jpg" id="4" class="lightbox"><img src="thumbs/macka s tatuirovki_t.jpg" width="150" height="100" class="images" /></a></li>
        <li><a href="imgs/mk7.jpg" id="5" class="lightbox"><img src="thumbs/mk7_t.jpg" width="150" height="100" class="images" /></a></li>
        <li><a href="imgs/P5010345.jpg" id="6" class="lightbox"><img src="thumbs/P5010345_t.jpg" width="150" height="100" class="images" /></a></li>
    </ul>

Ответы [ 2 ]

2 голосов
/ 08 апреля 2011

Вы звоните next на элемент a.Нет элементов, которые находятся после вашего тега a.Вы могли бы сначала получить родителя, получить следующий li, а затем схватить a от его детей.

var a = $(this).parent().next().children('a').attr('href');
2 голосов
/ 08 апреля 2011

Как насчет:

var a = $(this).parent().next().children('a').attr('href');

Вы должны перейти к родителю, перейти к следующему li и затем получить ссылку.

Вы также захотите добавить логику для достижения конца (и начала) списка.

...