Javascript 带选项卡的转盘:当转盘滑动到下一张或上一张幻灯片时,调整活动选项卡
我有一个没有指示按钮的Twitter引导3转盘。 我使用的不是那些指示器按钮,而是选项卡(我在CSS中相应地设置了样式)。 这样,用户就可以知道每张幻灯片是什么(基于选项卡标签),因此更容易转到他感兴趣的幻灯片 HTML如下所示:Javascript 带选项卡的转盘:当转盘滑动到下一张或上一张幻灯片时,调整活动选项卡,javascript,jquery,twitter-bootstrap,twitter-bootstrap-3,carousel,Javascript,Jquery,Twitter Bootstrap,Twitter Bootstrap 3,Carousel,我有一个没有指示按钮的Twitter引导3转盘。 我使用的不是那些指示器按钮,而是选项卡(我在CSS中相应地设置了样式)。 这样,用户就可以知道每张幻灯片是什么(基于选项卡标签),因此更容易转到他感兴趣的幻灯片 HTML如下所示: <div class="carousel slide" data-ride="carousel" id="whatIsCarousel"> <div class="carousel-inner"> <div cl
<div class="carousel slide" data-ride="carousel" id="whatIsCarousel">
<div class="carousel-inner">
<div class="item active">
<img src="slide0.png">
</div>
<div class="item">
<img src="slide1.png">
</div>
...
</div>
<a class="left carousel-control" data-slide="prev" href="#whatIsCarousel">
<span class="glyphicon glyphicon-chevron-left"></span>
</a>
<a class="right carousel-control" data-slide="next" href="#whatIsCarousel">
<span class="glyphicon glyphicon-chevron-right"></span>
</a>
</div>
<ul class="nav nav-justified" id="whatIsCarouselButtons">
<li class="active" data-target="#whatIsCarousel" data-slide-to="0">
<a data-toggle="tab" href="#">Slide 0</a>
</li>
<li data-target="#whatIsCarousel" data-slide-to="1">
<a data-toggle="tab" href="#">Slide 1</a>
</li>
...
</ul>
我希望这种方式可以帮助您: Bootply: Js:
$(document).ready( function() {
$('.carousel').carousel();
$('#whatIsCarousel').on('slide.bs.carousel', function(e) {
var from = $('.nav li.active').index();
var next = $(e.relatedTarget);
var to = next.index();
// This could interest you
$('.nav li').removeClass('active').eq(to).addClass('active');
});
});
$('.nav li').removeClass('active').eq(to).addClass('active');
专注于:
$(document).ready( function() {
$('.carousel').carousel();
$('#whatIsCarousel').on('slide.bs.carousel', function(e) {
var from = $('.nav li.active').index();
var next = $(e.relatedTarget);
var to = next.index();
// This could interest you
$('.nav li').removeClass('active').eq(to).addClass('active');
});
});
$('.nav li').removeClass('active').eq(to).addClass('active');
您可以从所有选项卡中删除
active
类,并将其添加到具有相同索引的选项卡中。我希望这种方法可以帮助您:
Bootply:
Js:
$(document).ready( function() {
$('.carousel').carousel();
$('#whatIsCarousel').on('slide.bs.carousel', function(e) {
var from = $('.nav li.active').index();
var next = $(e.relatedTarget);
var to = next.index();
// This could interest you
$('.nav li').removeClass('active').eq(to).addClass('active');
});
});
$('.nav li').removeClass('active').eq(to).addClass('active');
专注于:
$(document).ready( function() {
$('.carousel').carousel();
$('#whatIsCarousel').on('slide.bs.carousel', function(e) {
var from = $('.nav li.active').index();
var next = $(e.relatedTarget);
var to = next.index();
// This could interest you
$('.nav li').removeClass('active').eq(to).addClass('active');
});
});
$('.nav li').removeClass('active').eq(to).addClass('active');
您可以从所有选项卡中删除active
类,并将其添加到具有相同索引的选项卡中。尝试此操作
$(document).ready( function() {
$('#myCarousel').carousel({
interval: 4000
});
var clickEvent = false;
$('#myCarousel').on('click', '.nav a', function() {
clickEvent = true;
$('.nav li').removeClass('active');
$(this).parent().addClass('active');
}).on('slid.bs.carousel', function(e) {
if(!clickEvent) {
var count = $('.nav li').length -1;
var current = $('.nav li.active');
current.removeClass('active').next().addClass('active');
var id = parseInt(current.data('slide-to')) +1;
if(count+1 == id) {
$('.nav li').first().addClass('active');
}
}
clickEvent = false;
});
});
试试这个
$(document).ready( function() {
$('#myCarousel').carousel({
interval: 4000
});
var clickEvent = false;
$('#myCarousel').on('click', '.nav a', function() {
clickEvent = true;
$('.nav li').removeClass('active');
$(this).parent().addClass('active');
}).on('slid.bs.carousel', function(e) {
if(!clickEvent) {
var count = $('.nav li').length -1;
var current = $('.nav li.active');
current.removeClass('active').next().addClass('active');
var id = parseInt(current.data('slide-to')) +1;
if(count+1 == id) {
$('.nav li').first().addClass('active');
}
}
clickEvent = false;
});
});
太好了,谢谢!因为我已经有了需要更改的.nav元素:$('whatIsCarouselButtons').find('li').removeClass('active').eq(to).addClass('active');太好了,谢谢!因为我已经有了需要更改的.nav元素:$('whatIsCarouselButtons').find('li').removeClass('active').eq(to).addClass('active');