使用MooTools使Javascript变量全局变量
-
07-07-2019 - |
题
我现在正在使用mootools-1.2.3而且我无法在函数外部访问变量。
我需要在domready函数中定义变量,因为否则DOM尚未加载且选择器函数将无法工作(我不能将脚本放在HTML的末尾我无法控制当框架将引用写入外部脚本时。)
有没有在另一个函数中引用相同的变量?
window.addEvent('domready', function() {
var myVar = new myClass('someURL', 'elementSelectorString');
document.addEvent('click', function(event) {
myVar.doSomeStuff(var1, var2);
});
});
window.addEvent('unload', function(event) {
// Reference to myVar variable in domready function.
myVar.cleanUpStuff();
});
解决方案
将 var myVar;
放在顶层(在addEvents之上),然后从domready函数中删除 var
。变量在声明它们的范围内可见。
其他提示
全局变量实际上是窗口对象的属性,因此您可以使用:
window.myVar
只需在没有 var
关键字的情况下定义myVar。赋值期间缺少 var
意味着全局。
window.addEvent('domready', function() {
myVar = new myClass('someURL', 'elementSelectorString');
不隶属于 StackOverflow