Я создаю карусель с бутстрапом, и я бы хотел создать ссылку, которая прыгает прямо к последнему слайду в карусели (с n слайдами, а не фиксированным числом). Я попытался решить эту проблему, назначая класс active
до последнего div
в этом пути:Перейти к последнему слайду на карусели Bootstrap
$(".last").click(function(){
$('myCarousel div').removeClass('active');
$('myCarousel div:last-child').addClass('active');
});
Но это работает, если у меня есть только карусель на моей странице, но если карусели более чем одна ссылки перейдите к последнему слайду на всех каруселях. Как я могу решить проблему? Ниже приведен пример кода:
<div id="myCarousel1" class="carousel slide">
<div class="carousel-inner" role="listbox">
<div class="item active slide">
<img src="http://placehold.it/350x150">
</div>
[…] other items
</div>
</div>
<ul>
<a href="#myCarousel1" data-slide="prev"><li>Prev</li></a>
<a href="#myCarousel1" data-slide="next"><li>Next</li></a>
<a href="#myCarousel1"><li class="last">Last</li></a>
</ul>
<div id="myCarousel2" class="carousel slide">
<div class="carousel-inner" role="listbox">
<div class="item active slide">
<img src="http://placehold.it/350x150">
</div>
[…] other items
</div>
</div>
<ul>
<a href="#myCarousel2" data-slide="prev"><li>Prev</li></a>
<a href="#myCarousel2" data-slide="next"><li>Next</li></a>
<a href="#myCarousel2"><li class="last">Last</li></a>
</ul>
<script>
$(document).ready(function(){
$(".last").click(function(){
$('[id^="myCarousel"] div').removeClass("active");
$('[id^="myCarousel"] div:last-child').addClass("active");
});
});
</script>
Спасибо!
Почему не используйте селектор .parent ('. parent-class') для сужения контейнера Carousel, таким образом вы будете смотреть только на последний ребенок этого родителя, а не на все карусели на экране. –