原文链接:http://blog.csdn.net/whatday/article/details/39553451
最近有一个需求:
1.在一个html中只能引入一个JS文件 不能有JS代码和其他JS文件的引入
2.这个JS文件中 还要引入其他的JS文件
3.所有JS功能都写在这个JS文件中 这些代码用到了jQuery相关的东东 所以这里第一个需要解决的就是怎么引入jquery.js
在网上搜索了很多方法都不太实用,由于我自己离开WEB多年 最后向朋友询问得到以下代码
1.js
- // by firefoxmmx
- var script=document.createElement("script");
- script.type="text/javascript";
- script.src="jquery.js";
- document.getElementsByTagName('head')[0].appendChild(script);
- setTimeout(function(){
- $(document).ready(function(){
- $("#bt").click(function(){
- alert('Hello World');
- });
- });
- },100);
其中1.html代码如下:
- <html>
- <head>
- <script type="text/javascript" src="1.js"></script>
- </head>
- <body>
- <input type="button" id="bt" value="Click" />
- </body>
- </html>
如要测试还需要加上jquery.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>
其实原理就是利用dom动态的引入一个js到文件中来~就能和原有的js通信了~