尝试使.next()以相反的方式工作,因此它转到幻灯片放映中的上一张图像,而不是下一张图像,但是,当我按按钮时,它变成空白(什么都没有出现)。
<div id="slider">
<img src="slide1.png" class="sliderImage" />
<img src="slide2.png" class="sliderImage" />
<img src="slide3.png" class="sliderImage" />
</div>
<a href="javascript:void(0)"><div id="relative"><i class="fa fa-chevron-left" id="sliderArrowLeft"></i></div></a>
<a href="javascript:void(0)"><div id="relative"><i class="fa fa-chevron-right" id="sliderArrowRight"></i></div></a>
脚本:
$('#slider img:gt(0)').hide();
setInterval(function(){
$('#slider :first-child').hide()
.next('img').delay(1).fadeIn()
.end().appendTo('#slider');},
30000);
$("#sliderArrowRight").click(function() {
$('#slider :first-child').hide()
.next('img').delay(1).fadeIn()
.end().appendTo('#slider');
});
$("#sliderArrowLeft").click(function() {
$('#slider :first-child').hide()
.prev('img').delay(1).fadeIn()
.end().appendTo('#slider');
});
任何帮助表示赞赏。
最佳答案
您的问题是滑块第一个孩子不存在prev('img')。所以像这样改变你的功能:
$("#sliderArrowLeft").click(function() {
$('#slider :first-child').hide();
$('#slider :last-child').delay(1).fadeIn().prependTo('#slider');
});