我正在使用Twitter Bootstrap Carousel,虽然我对.js不是很熟悉,不知何故,我的工作正常。
唯一的问题是next / prev按钮工作方式很奇怪。
这是我的临时网站: http://tokyo-flaneur.com/dl/donner/contents/menu.html
虽然我有10张图片,但是点击下一个按钮我无法进入10号。在第三张图像之后,当我点击下一个按钮时,图像将返回到No.2。
此外,无论我看到哪个图像,当我点击上一个按钮时,它会一直回到No.1。
任何人都可以帮助我或指导我走向正确的方向吗?任何帮助将不胜感激。
答案 0 :(得分:3)
您使用自己的处理程序处理滑块的下一个/上一个按钮,因此它会滑动到第二个元素第一个,而不是尝试进行next()
取代:
$("#myCarousel a").click(function(e){
var index = $(this).index();
//when hitting NEXT button index always 2, for PREV - 0
slider.carousel(index);
e.preventDefault();
});
与
$("#myCarousel .slider-pager a").click(function(e){
var index = $(this).index();
slider.carousel(index);
e.preventDefault();
});
在你的onpage脚本
答案 1 :(得分:0)
对于此问题的未来访问者:
使用属性data-interval="false"
(Bootstrap 3.3.5):
<div id="myCarousel" class="carousel slide" data-ride="carousel" data-interval="false">
以下是Bootstrap 3中其他支持的轮播选项:
http://getbootstrap.com/javascript/#carousel-usage
早期版本:
<div id="myCarousel" class="carousel slide text-center" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
<li data-target="#myCarousel" data-slide-to="1"></li>
</ol>
<div class="carousel-inner" role="listbox">
<div class="item active">
<h4>A mind-bending lecture on applied philosophy by Oxford lecturer Ravi Zacharias.</h4>
<br>
<span class="font-normal">youtube/watch?v=3ZZaoavCsYE</span>
</div>
<div class="item">
<h4>Director of the Human Genome Project discusses the greatest mystery of life</h4>
<br>
<span class="font-normal">youtube/watch?v=EGu_VtbpWhE</span>
</div>
</div>
<a href="" class="left carousel-control" href="#myCarousel" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a href="" class="right carousel-control" href="#myCarousel" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div><!-- #myCarousel -->
<script>
$(function(){
$('.carousel-control').click(function(e){
e.preventDefault();
$('#myCarousel').carousel( $(this).data() );
});
});//END document.ready
</script>
注意:此答案需要jQuery,因此请确保已加载库。当然,bootstrap需要jQuery,所以你应该已经引用它。