如何在.js文件中插入资源?

时间:2011-09-06 09:52:41

标签: javascript jquery

我有scripts.js个文件。

如果我想在此文件中插入外部resoruce(如来自youtube的swfobject.js库),我该怎么办?

喜欢:

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

有可能吗?也许用jQuery的代码更少...

5 个答案:

答案 0 :(得分:2)

您可以使用jQuery的getscript api

$。getScript('swfobject.js',function(data,textStatus){ })

jQuery.getscript()

答案 1 :(得分:1)

请参阅:

http://jqfundamentals.com/#example-1.2

好吧,你似乎已经知道了最好的方法。

答案 2 :(得分:1)

以下是简单动态加载程序的示例代码,它以串行方式加载多个脚本:

https://github.com/miohtama/Krusovice/blob/master/src/krootstrap.js

  • 如果您使用的是相对URL,请首先检测当前脚本文件(加载程序)的基本URL。这需要一些魔力,因为Javascript不知道它自己的位置。如果您拥有该文件的完整HTTP URL,则可以进行此测试

  • 使用DOM操作注入新标记

  • 完成脚本加载过程并在完成后调用回调函数(请注意,在加载之前不能调用JS中的任何函数,因此需要等待此回调)

答案 3 :(得分:1)

你能做的最简单就是这样:

function importScript(path) {
    var el = document.createElement('script');
    el.type = 'text/javascript';
    el.src = path;
    var parent = document.getElementsByTagName('head')[0];
    if(!parent) parent = document.body;
    parent.appendChild(el);
}

实际上,如果您确定磁头始终存在,如果您决定始终将脚本附加到文档正文,那么它可能会更简单。

答案 4 :(得分:0)

有许多方法可以动态加载脚本,但我认为你想要的东西就像这样简单:

function importScript(path) {
  document.write('<script type="text/javascript" src="' + path + '"></scr' + 'ipt>');
}

importScript('/scripts/jquery-1.6.2.min.js');