0

附加元素后,我必须重新初始化一个函数,因为该函数在未重新初始化时对附加元素不起作用。

function reinitialize()
{        
    //code sample
    alert('call me only once');
}

问题是,例如,元素附加了更多次,比如说 4x

然后 reinitialize() 将被调用 4x ,然后将给出上面示例的结果

call me only once
call me only once
call me only once
call me only once

所以我认为我必须只将该函数重新初始化到将要附加的元素。

如何处理?

4

1 回答 1

0

您可以制作一个只运行一次的函数,如下所示(小提琴:http: //jsfiddle.net/DeNTr/):

(function(){
  var hasRun = false;
   window.reinitialize = function(){
     if (hasRun) {
        return;
     }
     console.log("running...");
     //stuff
     hasRun = true;
  }

})();

reinitialize (); // prints running...
reinitialize (); //does nothing
于 2013-11-04T02:42:33.073 回答