javascript - 在 jQuery 链中调用 JavaScript 函数

标签 javascript jquery

function jsFunc() {
  alert('i am js!');
}

$('#node').slideDown().call(jsFunc());

当然,该函数不称为“call”。

** 编辑 **

(代表OP添加解决方案)

解决方案

http://jsfiddle.net/gx2mJ/1/

HTML:

<div id="content">
    <p class="article">
        this is an article
    </p>
</div>

JavaScript:

function callBack() {
    $("#content .article").html("the callback has been called");
}

$(document).ready(function() {
    $("#content .article").slideUp(0);

    $("#content .article").each(function(i) {
        $(this).delay(i*250).slideDown(function(){
             //if ($("#content .article:animated").length < 1) {
                  callBack();
             //}
        });
    });
});

最佳答案

默认情况下您不能这样做,但您可以轻松地将其添加为插件:

$.fn.call = function (fn, args, thisp) {
    fn.apply(thisp || this, args);
    return this; // if you want to maintain chainability -- other wise, you can move the return up one line..
}

虽然我不确定你为什么要这样做。如果您认为它要等到slide 完成后才会运行,那么您就错了,因为 jQuery 动画是异步的。

关于javascript - 在 jQuery 链中调用 JavaScript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3903328/

相关文章:

jquery - Bootstrap 的 IE8 中不显示占位符

javascript - 在 Zend Framework 1.12 中保存之前确认验证

javascript - 从 javascript 触发 Pusher 事件

javascript - 使用 jquery ui 禁用可排序或拖动

javascript - 在 javascript 中排序时 new RegExp(filter, "i")) 中 i 的意义是什么?

javascript - 如何解析javascript中的javascript对象字符串?

javascript - 无法访问 Angular JS Controller 中的 $scope 属性?

Javascript/jQuery 文本幻灯片

javascript - jQuery 和 JavaScript - 允许在替换的 Div/Span 中按键下拉行为的默认第一选择

javascript - HTML5-canvas 使圆圈在 Canvas 内闪烁