如何知道我是否已到达最后“里”?物品
我用“li”标签和 jquery 制作了一个幻灯片。
整个“ul”相对于“下一个”/“上一个”按钮向左或向右移动,其宽度等于所有幻灯片放在一起的总宽度,即每张 700 像素。并且在宽度等于 700px 的视口中只允许显示 1 张幻灯片。但是,当我单击“下一步”时,即使没有更多幻灯片,节目仍会继续。
解决方案是当最后一张幻灯片显示在视口中时隐藏“下一步”按钮。我该怎么做?
或者也许欢迎另一个解决方案...
这是我的简化代码:
var slideList = $('#slideWindow ul')
$('#next').click(function(e){
slideList.animate({ 'left': '-=700px' });
if( $('li:last').next() === 0 ){
$(this).hide();
} else {
$(this).show();
}
return false;
});
I've made a slide-show with 'li' tags and jquery.
The whole 'ul' moves to the left or right respective to the Next/Prev buttons and has a width equal to the total width of all the slides put together, i.e. 700px each. And only 1 slide is allowed to show in the viewport of width equal to 700px. But when I click next the show goes on even though there's no more slides.
The solution is to hide the Next button when the last slide shows up in the viewport. How do I do that?
Or maybe another solution is welcome...
This is my simplified code:
var slideList = $('#slideWindow ul')
$('#next').click(function(e){
slideList.animate({ 'left': '-=700px' });
if( $('li:last').next() === 0 ){
$(this).hide();
} else {
$(this).show();
}
return false;
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果有一个特定的类
classBeingViewed
应用于当前正在查看的li
,您可以这样做:或者您可以跟踪索引。这是更可取的,因为它允许两个方向的动画。
然后,当您想要反转动画时,可以将点击处理程序中的
listIndex
递减为$('#previous')
。If there is a particular class
classBeingViewed
applied toli
that is being viewed at the moment, you can just do:Or you can keep track of the index. This is preferable since it allows animations in both directions.
Then, you can decrement
listIndex
in a click handler to$('#previous')
when you want to reverse the animation.