用原生js怎么动态添加一个js文件

用原生js怎么动态添加一个js文件,第1张

如果需要用原生js动态的加载另外一个js文件,可以使用原生js的documentcreateElement方法创建script节点,然后更改该节点的type和src属性,最后通过appendChild方法将该节点动态添加到html中,这样就可以了,参考代码如下:
var new_element = documentcreateElement("script");//创建新的script节点new_elementsetAttribute("type", "text/javascript");new_elementsetAttribute("src", "/js/jqueryjs");documentbodyappendChild(new_element);//添加到body节点的末尾
上例中是在body的最末尾添加的,当然同样可以在head中添加引用该js的标签:documentheadappendChild(new_element);

Js文件中调用其它Js函数的方法:
1、例如有这样一个html,里面有一个按钮,当按下时调用bjs文件中的方法b()。而b()中又要调用ajs文件中的方法a()。那我们应该怎么做呢?
首先,在html中引入bjs,并在</body>之后加入引用语句。必须注意,将要引入的Js文件代码放在</body>下面。
<html>
<body>
<input type="button" value="ok" onclick="javascript:b()">
</body>
<!--这里引用要放在body下面-->
<script language="JAVASCRIPT" src='bjs'></script>
</html>
bjs文件中引入ajs,内容如下:
new_element=documentcreateElement("script");
new_elementsetAttribute("type","text/javascript");
new_elementsetAttribute("src","ajs");// 在这里引入了ajs
documentbodyappendChild(new_element);
function b() {
a();
}
在bjs文件中前4行代码中我们引入了ajs文件,并在第7行代码中调用了ajs代码中的a()方法。
注意:<script language="JAVASCRIPT" src='bjs'></script>一定要放在body下面。
因为在bjs中用到了body(documentbodyappendChild(new_element);)
如果将引如bjs的代码放在body上面,也就是说, 进入页面后,还没有生成body就已经执行bjs里的documentbodyappendChild(new_element);了。 这时body不存在就会抛javascript错误。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13400164.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-29
下一篇 2023-07-29

发表评论

登录后才能评论

评论列表(0条)

保存