0

我知道我可以使用以下语法从 HTML 中运行外部 Javascript 文件:

<script type="text/javascript"
src="http://somesite.com/location/of/javascript.js">
</script>

这将导致在http://somesite.com/location/of/javascript.js浏览器读取该 HTML 行时运行。

但是有没有办法可以从 Javascript 中运行外部 Javascript 文件?就像是:

if (x == 1)
{
 run this! -> http://somesite.com/location/of/javascript.js;
}

显然这不是有效的代码。但是我找不到任何可能是正确方法的示例(如果存在),因为我在 Google 搜索中找到的所有帮助文本都告诉我如何从 HTML 中运行 Javascript

我知道我可以包含一个 Javascript 文件,然后在其中调用函数。但是,在这种情况下,我无法控制http://somesite.com/location/of/javascript.js它,它被设计为在调用它的那一刻执行。我无法改变它的工作方式,所以我需要弄清楚如何在正确的时间以正确的方式调用它。

有没有一种方法可以根据条件语句立即调用​​和执行它?

4

3 回答 3

6

是的,在纯 Javascript 中,您可以动态加载 javascript

var s = document.createElement("script");
s.src = "test.js";
document.body.appendChild(s);
于 2012-06-28T11:16:07.570 回答
1

有一种方法...

var extfile = document.createElement('script')
extfile.setAttribute("type","text/javascript")
extfile.setAttribute("src", external_jsfilename)
document.getElementsByTagName("head")[0].appendChild(extfile)

就那么简单 ....

于 2012-06-28T11:16:13.043 回答
1

使用 jQuery 的.getScript()文件将被加载然后执行

if (x == 1)
    {
     $.getScript( "http://somesite.com/location/of/javascript.js");
    }
于 2012-06-28T11:17:38.777 回答