外部javascript文件上的代码无法正常工作

时间:2013-07-27 14:33:47

标签: javascript

    (function foo() {
        alert('Hello World!');
        setTimeout(foo,1000);
    })();

我写了这样的功能。当我把这个函数放在我的HTML页面内的标签时,这个功能正常工作。但是当我把这个函数放到外部javascript文件并将该文件链接到我的网页时,这个函数只执行一次(警报只弹出一次)。我的意思是setTimeout(foo,1000); 似乎没有任何影响。

问题在哪里,我怎么能摆脱这个? [但我的js文件上的其他功能正常工作。]

1 个答案:

答案 0 :(得分:0)

<强> FIXED:

我认为你需要像这样包装成闭包函数:

(function() {
    function foo(){
      console.log('Hello, world!', new Date().toLocaleTimeString());
      setTimeout(foo,1000);
    }

    window.onload = foo;
})();

一点点theory and examples