【发布时间】:2011-03-10 17:25:34
【问题描述】:
我正在使用 mootools: 在使用 addEvent 时,我不知道如何使用变量。
我想使用 for next 循环在循环中设置值:
for (x=0;x<num;x++){
var onclickText = 'function (){onclick="addPageMoveEvent('+x+'"); }';
$('pageNum'+x).addEvent('click', onclickText);
}
>
我搜索了论坛,但没有找到任何帮助。
任何帮助都会很棒。
谢谢
【问题讨论】:
-
到底出了什么问题?
-
首先,
for (x=0;x<num;x++)应该是for (var x=0;x<num;x++)。那个确切的问题花了我三个小时才解决一次。 -
不理解“var”问题。我认为 var 只是关于变量的范围,即全局或非全局。为什么会有所不同?
-
因为如果它是全局的并且没有足够的注意,则此代码的所有调用都将创建对
x的引用,从而导致每个链接都执行相同的操作。如果x是本地的,则不会保留其值,即将创建对名为x的不同事物的引用。但是随着闭包的复杂性增加,无论如何这并不重要。
标签: javascript variables scope mootools closures