如何有条件地包含外部JavaScript文件?

How to include an external javascript file conditionally?

本问题已经有最佳答案,请猛点这里访问。

我有这个代码:

1
<script src="http://external/js/file/url.js">

我想做这样的事-

1
2
3
if(2>1){
//include http://external/js/file/url.js
}

有什么想法吗?


以前在另一个javascript文件中包含一个javascript文件时曾问过这个问题。这套代码可能适合你一直在寻找的

1
2
3
4
5
6
7
8
9
10
function include(filename)
{
   var head = document.getElementsByTagName('head')[0];

   var script = document.createElement('script');
   script.src = filename;
   script.type = 'text/javascript';

   head.appendChild(script)
}

如果这个脚本不起作用,我建议您查看并阅读上面的文章:在另一个javascript文件中包含一个javascript文件。

我希望这有帮助,也许这不是你一直在寻找的答案,但可能只是帮助。


只需异步加载

1
2
3
4
5
6
7
8
9
if(yourCondition==true){
var d = document,
            h = d.getElementsByTagName('head')[0],
            s = d.createElement('script');
    s.type = 'text/javascript';
    s.async = true;
    s.src = 'http://external/js/file/url.js';
    h.appendChild(s);
}


您可以使用如下内容:

1
2
3
4
5
6
7
<script type="text/javascript">

   if (condition == true) {

      document.getElementsByTagName("head")[0].innerHTML += ("<script src="http://external/js/file/url.js" type="text/javascript">");

   }