javascript - 如何编写接受回调函数的 jQuery 插件方法?

标签 javascript jquery jquery-plugins jquery-animate

我在 Stack Overflow 上读过几个类似的案例,但还没有一个与我的完全一样。这是我的 jQuery 插件的要点:

(function($) {
    var methods = {
        init: function() {
            ...
            $(this).myPlugin("close");
            $(this).myPlugin("open");
        },
        open: function() {
            ...
        },
        close: function() {
            ...
        }
    }
})(jQuery);

open()和close()方法涉及到jQuery的slideUp()和slideDown()方法,所以我需要能够调用close()方法,然后调用open()方法作为回调。但是,当我尝试this solution时我没有运气。

最佳答案

(function($) {
var methods = {
    init: function() {
        ...
        $(this).myPlugin("close",function() {
            $(this).myPlugin("open");
        }
    },
    open: function() {
        ...
    },
    close: function(options, callback) {

        callback.call($(window));
        ...
    }
}
})(jQuery);

您可以使用此代码.. 这是调用作为参数传递的函数(回调)的方法。

关于javascript - 如何编写接受回调函数的 jQuery 插件方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9901617/

相关文章:

java - JavaScript 和 Java 默认支持 REST 还是我需要安装新软件?

javascript - 数据表中的列排序问题

javascript - JSONP 使用 - 范围或异步问题?使用 JQuery

jquery - 通过Ajax Jquery将JsonMessage添加到RabbitMQ

javascript - 用于将 HTML 转换为 Markdown 的 Jquery 插件

Javascript RegEx 无法识别移动 iOS 上的撇号

javascript - Jquery/Js 函数没有按预期工作

javascript - 模态弹出内的按钮单击不起作用

jquery - 如何在图像/视频上叠加文本?

javascript - 为什么在运行图形之前会弹出alert(),但不会弹出对话框或DIV?