浏览 1626 次
锁定老帖子 主题:写js加载器遇到的 ie如何处理"?"
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2008-07-30
<script src="scriptaculous.js?load=effects,dragdrop" type="text/javascript"></script> 实现js加载。 根据这个思想,编了个实现类似功能载入器,发现个问题ie,和firefox对"?"处理不同 本想实现root.js?load=但是经过调试发现firefox可以正常运行,ie则显示空白。?换成#则可以了。郁闷了, 哪位知道如何让ie能处理root.js?load=形式呢? root.js /* * head下嵌入如下代码,实现prototype1.5.js,check.js的载入 * <script src="js/root.js#load=prototype1.5,check" type="text/javascript" dir="js/test"></script> * * */ (function (){ var jsDir=null; var stag = document.getElementsByTagName("script"); stag=stag[stag.length-1]; var url = stag.getAttribute("src"); //"js/root.js#load=prototype,check" var dir = stag.getAttribute("dir");// 载入js目录(可选参数) "js/test" var jspath; //js路径 :"js/" var jsimps;//导入的js文件名:"prototype,check" var impjs; //<script type="text/javascript src="prototype1.5.js"></script>; var jstag = "<script type=\"text/javascript\" src=\""; if(url.indexOf("#")==-1){ alert("载入错误"); }else{ url=url.replace("root.js", ""); var urlarr=url.split("#load="); if(dir){ jspath=urlarr[0]+dir+"/"; }else{ jspath =urlarr[0]; } if(urlarr[1].indexOf(",")==-1){ jstag+=jspath+urlarr[1]+".js\"><\/script>"; document.write(jstag); }else{ jsimps = urlarr[1].split(","); for(i in jsimps){ impjs=jstag+jspath+jsimps[i]+".js\"><\/script>"; document.write(impjs); } } } })(); 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-07-31
通过这种形式
<script src="js/root.js# load=prototype1.5,check" type="text/javascript" dir="js/test"></script> 程序实现js加载,但是看着"#"总不顺眼,谁能给个意见如何改成"?" 目前发现ie6加载不了<script src="js/root.js? load=prototype1.5,check" type="text/javascript" dir="js/test"></script> 形式,firefox则没问题。 应该说清楚了吧。 |
|
返回顶楼 | |
发表时间:2008-07-31
太粗心了,测试check.js错了,OK,IE没有这样的问题。可以正常加载,结贴
|
|
返回顶楼 | |