gpt4 book ai didi

javascript - jQuery 插件如何维护全局状态?

转载 作者:行者123 更新时间:2023-11-29 10:21:47 26 4
gpt4 key购买 nike

我最近写了我的第一个简单的 jQuery 插件。我很自豪。

http://jsfiddle.net/johnhoffman/wSeLY/1/

(function($) {
$.fn.makeRed = function() {
return this.each(function() {
$(this).css("color", "#f00");
});
}
})(jQuery);

我想知道为什么它会起作用。我将 jQuery 对象传递给这个立即运行的封闭函数。

随后,|$| 不是吗?在该匿名函数中对象局部变量?它如何改变全局单例 jQuery 对象?

换句话说,我不就是通过$.fn.myFunctionName 向对象|$| 添加了一个函数吗?封闭函数的局部?它如何更改全局 jQuery 对象并使我的函数 (makeRed) 可用于脚本全局范围内的选择器?

最佳答案

isn't the |$| object a local variable within that anonymous function?

是的,$ 是函数中的局部变量,但是,这是一个很大的 but,它是对全局可访问的 jQuery 对象的引用。事情看起来像这样:

window.jQuery (global) ----->-----> { ... }
^
|
$ (local) ------------------>-------+

因此,您有两个指向同一个对象的变量,并且在调用匿名函数后该对象仍然存在。

关于javascript - jQuery 插件如何维护全局状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10222743/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com