代码之家  ›  专栏  ›  技术社区  ›  Tommy B.

Javascript使浏览器永远加载并使Safari崩溃

  •  0
  • Tommy B.  · 技术社区  · 16 年前

    我正在尝试制作一个小脚本来注入 <script> 在页面中添加标签。

    这是:

    <script type="text/javascript" charset="utf-8">
        var url = 'http://my_url.com/js/widget_rss.js?cle=4c65683101e22&host=' + window.location.hostname;
        var scriptTag = document.createElement('script');
        scriptTag.src = url;
        var head = document.getElementsByTagName("head")[0];
        (head || document.body).appendChild(scriptTag);
    </script>
    

    它正在工作,它调用另一个文件并运行该文件,但它使浏览器永远加载。。。

    你知道怎么回事吗?

    谢谢

    1 回复  |  直到 5 年前
        1
  •  1
  •   Ionuț Staicu    16 年前

    每次我需要这种脚本加载时,我都会使用以下代码段:

    function loadScript(scriptName) {
        var customScript = document.createElement('script');
                customScript.type = 'text/javascript';
                customScript.async = true;
      customScript.src = scriptName;
        (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(customScript);
    };//loadScript
    

    之后,你只需要打电话给 loadScript('path/to/script') .

    如果你需要更高级的东西(比如回调和CSS加载器),你可以使用 lazyload .