Jquery插件语法解释?

标签 jquery jquery-plugins

我见过一些 jQuery 插件代码

其中之一是重载 jQuery 中的 addClass 方法(例如:当您 addClass 时 - 调用 myfunction ())。

(function(){

    var originalAddClassMethod = jQuery.fn.addClass;

    jQuery.fn.addClass = function(){
        // Execute the original method.
        originalAddClassMethod.apply( this, arguments );

        // call your function
        // this gets called everytime you use the addClass method
        myfunction();

    }
})();

我不明白的事情:

他为什么要创建一个闭包?

我可以在普通函数内使用 var 的私有(private)成员,并且它仍然仅对本地范围可见......所以?

你能给我解释一下吗?

他从这次关闭中赚到了什么?

如果他向函数发送 $ 符号,我就会理解...但他没有

最佳答案

我认为添加了闭包,以便变量originalAddClassMethod不在全局作用域(或父作用域)中定义,并且对插件来说是私有(private)的。

你说:

I could use a private members inside a normal func with the var and it still be visible to the local scope only.

这正是这里所做的:该函数是匿名的,但仍然“正常”。

关于Jquery插件语法解释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8293779/

相关文章:

使用变量调用 Javascript 命名空间

javascript - 使用 javascript 和 Jquery 检索 url 变量的函数?

javascript - 如果是星期六、星期一或星期三,用于填充选择列表/下拉列表的 jquery 脚本

javascript - 检查当前时间是否落在 JavaScript 中的特定时间间隔内

javascript - 如何获取 jQuery 插件附加的元素?

javascript - fancybox 没有正确加载内容

c# - 返回纯文本 JSON 请求

javascript - 获取一行 jQuery 的最后一个 li

javascript - jQuery 表单回调兼容性问题

php - 在 Flexigrid 中添加复选框列