【问题标题】:what are all the different ways to include an external javascript file into a html?将外部javascript文件包含到html中的所有不同方法是什么?
【发布时间】:2010-09-26 17:27:06
【问题描述】:

将外部 javascript 文件包含到 html 中的所有不同方法是什么? 请给我一些例子。

提前致谢。

【问题讨论】:

    标签: javascript include


    【解决方案1】:

    三种可能的解决方案

    标准方式

    <script type="text/javascript" language="javascript" src="myfile.js"></script>
    

    通过 Javascript 本身(示例)

    function loadCoolScript(){
      var file=document.createElement('script')
      file.setAttribute("type","text/javascript")
      file.setAttribute("src", "http://siteb.com/cool-script-location/cool-script.js")
      document.getElementsByTagName("head")[0].appendChild(file)
    }
    

    通过LabJS进行非阻塞加载

    <script>
       $LAB
       .script("framework.js").wait()
       .script("plugin.framework.js")
       .script("myplugin.framework.js").wait()
       .script("init.js");
    </script>
    

    【讨论】:

    【解决方案2】:

    这里有三种不同的方式...

    1。 2.函数包含(文件){ var script = document.createElement('script'); script.src = 文件; script.type = '文本/javascript'; script.defer = true; document.getElementsByTagName('head').item(0).appendChild(script); } /* 在此处包含任何 js 文件 */ include('js/myFile1.js');包括('js/myFile2.js'); 3.document.write('');

    【讨论】:

    • 第三个选项不适用于以 XML 模式加载的 XHTML 文档。
    【解决方案3】:

    您可以通过添加 &lt;script&gt; 标记在页面的任何位置包含外部 JavaScript 文件:

    <script type="text/javascript" src="yourJavaScriptFile.js"></script>
    

    如果可能,将此部分添加到结束 &lt;body&gt; 标记的上方会很有用。否则,它会减慢用户可见的其他部分的加载速度。

    请注意,如果您在 html 源代码中有脚本调用,(例如:&lt;div onclick="functionFromExternalJavaScriptFile()"&gt; 这在加载 JavaScript 文件之前将不起作用,即使用户已经可以点击该 div。这将触发 JavaScript错误。

    为确保不会发生这种情况,您必须在该标记上方加载脚本文件。

    有一些解决方法可以确保不会触发错误,但我现在不能提供一些示例:-(

    【讨论】:

    • 没关系,但您不仅限于页面的 部分。通常将这些放在关闭 部分之前,这样您的页面加载速度会更快。这将取决于您使用 javascript 做什么。
    • 这不需要在 部分。事实上,将它放在 的末尾通常更快,因为它是一个阻塞负载。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-13
    • 2011-01-19
    • 2012-08-08
    • 2013-06-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多