如何在html页面动态加载js文件

如题所述

下面介绍三种异步执行加载Js 脚本的方法。
1、直接document.write
<script language="javascript">
document.write("<script src='test.js'><\/script>");
</script>
2、动态改变已有script的src 属性
<script src='' id="s1"></script>

<script language="javascript">
s1.src="test.js"
</script>
3、动态创建 script元素
<script>
var oHead = document.getElementsByTagName('HEAD').item(0);

var oScript= document.createElement("script");

oScript.type = "text/javascript";

oScript.src="test.js";

oHead.appendChild( oScript);
</script>
注 ,
这三种方法都是异步的,所以在采用这类方法动态加载Js 的同时,主界面的Js脚本是继续执行的,所以可能出现通过异步加载的Js代码得不到预期的效果的情况。这时候可以考虑采用Ajax加载Js的方法。
大概原理 :用XMLHTTP取得要脚本的内容,再创建 Script 对象。另外注意编码的保持一致。因为服务器与XML使用UTF8编码传送数据。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-01
// 用js的方式
var script = document.createElement('script');
script.type = "text/javascript";
script.src = "abc.js";
document.body.appendChild(script);

本回答被提问者和网友采纳