javascript - 仅在最后一项完成后运行 jQuery slideDown 完成功能

标签 javascript jquery

<分区>

我知道您可以将一个函数传递给 slideUp/slideDown,该函数将在转换完成后运行:

$('li').slideUp({
    complete: function(){
        alert('done');
    }
});

使用此 HTML,警报显示 3 次。

<ul>
    <li>[content here]</li>
    <li>[content here]</li>
    <li>[content here]</li>
</ul>

有什么方法可以让 complete 函数只在 last 列表项完成 slideUp 时触发一次? ( fiddle )

最佳答案

您可以“重做”您的选择器并检查 this 是否是最后一个:

$('li').slideUp({
    complete: function(){
        if($('li:last').is(this)){
            alert('done');
        }
    }
});

fiddle :http://jsfiddle.net/5NQsU/

缓存你的选择器会更好:

var $li = $('li');
$li.slideUp({
    complete: function(){
        if($li.last().is(this)){
            alert('done');
        }
    }
});

关于javascript - 仅在最后一项完成后运行 jQuery slideDown 完成功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17709175/

相关文章:

javascript - 如果分隔符不包含在字符串中,则 javascript 拆分的行为

javascript - 不知道如何用 Jasmine 测试这个异步函数

javascript - 在javascript中循环遍历json多维数组

javascript - 在 reactjs 中导入动态组件

javascript - 如何检测 Android 1.5 上的 javascript 功能

javascript - 在输入字段中使用 Tab 键时保持占位符 |查询

javascript - 提交后在另一个页面显示多个复选框的值

javascript - 将 div 元素从一个父 div 移动到另一个

javascript - 使 div 比其容器更宽的更简单的方法

jquery - 改变jquery中X个单元格的背景