<input type="button" name="btnaa" id="btnaa" value="按钮" onclick="xx()"/>
<script type="text/javascript" id="tt1"></script>
<script type="text/javascript">
document.getElementById("tt1").src="t3.js";
function xx()
{document.getElementById("tt1").src="t4.js";alert("OK");}
</script>t3.js文件
alert("t3.js is ok")t4.js文件
alert("t4.js is ok")以上语句在IE8中还能执行t4.js,更新到IE9后,t4.js不被执行(同样文件我在另一台电脑IE8上,执行成功),试过火狐、谷歌,t4.js同样不被执行。
程序中多次要借用tt1这个壳,通过更改src来执行不同的JS文件。
请教大侠,如果不使用动态创建document.createElement('script')的方式,还有其他好的方法吗?
我不希望每执行一个JS文件,都要创建一个临时的script对象。

解决方案 »

  1.   

    IE几款浏览器都比较不稳定,比如说今天可以明天一个补丁就不可以了,我原来src ie6能改变,ie7也行,后来无缘无故就不行了,但是最近发现又可以了
      

  2.   

    有兴趣的话研究下这个
    http://www.cnblogs.com/cloudgamer/archive/2009/12/22/ImagePreview.html
      

  3.   

    <input type="button" name="btnaa" id="btnaa" value="按钮" onclick="xx()"/>
    <div id="aaa"></div><script type="text/javascript">
    document.getElementById("aaa").src="<scr"+"ipt type=/"text/javascript/" src='t3.js'></scr"+"ipt>";
    function xx()
    {document.getElementById("aaa").src="<scr"+"ipt type=/"text/javascript/" src='t4.js'></scr"+"ipt>";alert("OK");}
    </script>