在页面加载时调用函数

时间:2011-08-03 13:10:09

标签: javascript

for (var key in obj[i]) {
    dataDump[key] = textField.value;
    var callback = function(zeKey){
       return function(e){
          dataDump[zeKey] = e.source.value;
       }; 
    }(key);
    textField.addEventListener('change', callback);
}

当我加载窗口时,会自动调用此函数,这是我不想要的,而是我希望仅在我进行更改时调用它。

重点是呼叫function(zeKey){...}(key)。执行此操作时,key(字符串)将作为参数(zeKey)复制到匿名函数。

2 个答案:

答案 0 :(得分:1)

以下

var callback = function(zeKey){
    return function(e){
        dataDump[zeKey] = e.source.value;
    }; 
}(key);
  1. 使用参数zeKey调用匿名函数。
  2. 此匿名函数返回另一个函数。此返回的函数将分配给回调。
  3. 如果 1 你的意思是“函数被调用”那么这就是预期的行为。

    只有在DOM准备就绪后才能调用整个代码。将所有这些放在一个函数中,并确保仅在window.onload或(jQuery).ready()

    上调用该函数

    函数返回的函数只在回调期间被调用。

答案 1 :(得分:0)

创建dom后添加这些代码。如果上面的代码在函数内部,请附加到window.load或在页面末尾写下这些代码。