Aktualisieren Sie die aktuelle Anzahl der Folien, wenn Sie zu einem bestimmten Element springen - Bootstrap 3-Karussell
Ich habe das Standard-Boostrap-3-Karussell geändert, um zu einer bestimmten Folie springen zu können, wenn die URL übereinstimmt#
. Es funktioniert, aber meinepager-text
wird nicht aktualisiert, wenn zu einer bestimmten Folie gesprungen wird. Die Funktion zum Aktualisieren derpager-text
funktioniert erst, nachdem ein Objekt verschoben wurde. Hat jemand eine Lösung?
Mein HTML:
<li class="pager-text">1/{{ object.photo_set.count }}</li>
Meine .js:
$(document).ready(function() {
//Initiate carousel
$('.carousel').carousel({
interval: false
})
$('.carousel').on('slid.bs.carousel', function () {
var carouselData = $(this).data('bs.carousel');
var currentIndex = carouselData.getActiveIndex();
var total = carouselData.$items.length;
// Display the current number of the slide
var text = (currentIndex + 1) + "/" + total;
$('.pager-text').text(text);
// Update location based on slide (index is 0-based)
window.location.hash = "#"+ parseInt($('.carousel .carousel-inner .item.active').index()+1);
});
});
var url = document.location.toString();
if (url.match('#')) {
// Clear active item
$('.carousel .carousel-inner .item.active').removeClass('active');
// Activate item number #hash
$('.carousel-inner div:nth-child(' + url.split('#')[1] + ')').addClass('active');
}