gpt4 book ai didi

jquery - 是否可以让多个jquery插件共享同一个变量?

转载 作者:行者123 更新时间:2023-12-01 05:06:56 26 4
gpt4 key购买 nike

我之前问过一个问题如何获取另一个插件的变量,但我认为这不是解决我的问题的正确方法。所以,我认为最好的方法可能是共享相同的变量。例如:

我有一个全局变量 zIndex ,每次我的插件 [可能是plugin1,plugin2...]创建一个新元素时,它都会获得z -index 值加一并分配回 zIndex ,每次单击该元素时,该元素都会获取最新的 zIndex 值并加上1 并将其返回到zIndex

因此,每个新创建的元素都可以获取最新的zIndex值,并且每次元素点击>,它获取最新的zIndex更新zIndex值。

问题是:是否可以在插件之间共享这种全局变量以及如何更新插件内的全局变量?

非常感谢!!

最佳答案

如果您可以完全控制您的插件,则只需使用简单的闭包即可共享变量:

(function($) {
var mySharedVariable = "shared";

$.extend($.fn, {
plugin1: function() {
return this.each(function(i,e) {
mySharedVariable = "plugin1";
});
},
plugin2: function() {
return this.each(function(i,e) {
mySharedVariable = "plugin2";
});
}
});
}(jQuery));

由于函数 plugin1plugin2 具有相同的父作用域(或更准确地说,它们的激活对象),因此它们将共享访问mySharedVariable

演示:http://www.jsfiddle.net/EMpQN/

关于jquery - 是否可以让多个jquery插件共享同一个变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4736677/

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