Javascript 如何知道我';我已经到了最后一站';李';项目

Javascript 如何知道我';我已经到了最后一站';李';项目,javascript,jquery,slideshow,Javascript,Jquery,Slideshow,我制作了一个带有“li”标记和jquery的幻灯片 整个“ul”分别向左或向右移动到下一个/上一个按钮,其宽度等于所有幻灯片的总宽度,即每个幻灯片700px。并且仅允许在宽度等于700px的视口中显示一张幻灯片。但当我点击“下一步”时,即使没有更多的幻灯片,节目仍在继续 解决方案是在视口中显示最后一张幻灯片时隐藏“下一步”按钮。我该怎么做 或者另一个解决方案是受欢迎的 这是我的简化代码: var slideList = $('#slideWindow ul') $('#next').click

我制作了一个带有“li”标记和jquery的幻灯片

整个“ul”分别向左或向右移动到下一个/上一个按钮,其宽度等于所有幻灯片的总宽度,即每个幻灯片700px。并且仅允许在宽度等于700px的视口中显示一张幻灯片。但当我点击“下一步”时,即使没有更多的幻灯片,节目仍在继续

解决方案是在视口中显示最后一张幻灯片时隐藏“下一步”按钮。我该怎么做

或者另一个解决方案是受欢迎的

这是我的简化代码:

var slideList = $('#slideWindow ul')

$('#next').click(function(e){

    slideList.animate({ 'left': '-=700px' });

    if( $('li:last').next() === 0 ){

        $(this).hide();

    } else {

        $(this).show();

    }

    return false;

});

如果当前正在查看的
li
应用了一个特定的类
classbeingview
,您可以执行以下操作:

if($('li').last() == $('li.classBeingViewed')){
    $(this).hide();
else {
    $(this).show();
}
或者你可以跟踪索引。这是最好的,因为它允许在两个方向上进行动画

var slideList = $('#slideWindow ul');
var listIndex = 0;
var numLiElements = $('li').length;

$('#next').click(function(e){
    slideList.animate({ 'left': '-=700px' });
    if( listIndex == numLiElements ){
        $(this).hide();
    } else {
        listIndex += 1;
        $(this).show();
    }
    return false;
});

然后,当您想要反转动画时,您可以在单击处理程序中将
listIndex
减至
$(“#previous”)

如果当前正在查看的
li
应用了特定类
,您可以执行以下操作:

if($('li').last() == $('li.classBeingViewed')){
    $(this).hide();
else {
    $(this).show();
}
或者你可以跟踪索引。这是最好的,因为它允许在两个方向上进行动画

var slideList = $('#slideWindow ul');
var listIndex = 0;
var numLiElements = $('li').length;

$('#next').click(function(e){
    slideList.animate({ 'left': '-=700px' });
    if( listIndex == numLiElements ){
        $(this).hide();
    } else {
        listIndex += 1;
        $(this).show();
    }
    return false;
});

然后,当你想反转动画时,你可以在点击处理程序中将
listIndex
减量到
$(“#previous”)

你能提供一个链接或滑块的jsfiddle来查看按钮的确切位置吗?@cross:谢谢你的回答,但这与按钮的位置无关,这是关于它们是如何工作的。你能提供一个链接或一个滑块的图标来查看按钮的确切位置吗?@cross:谢谢你的回答,但这不是关于按钮的位置,而是关于它们的工作方式。