动态加载js
基于prototype.js的动态加载js
用法:
1、引入prototype库
<script type="text/javascript" src="/js/prototype.js"></script>
2、引入webJsBase.js
<script type="text/javascript" src="/js/webJsBase.js?load=ad,adTopDown,logoTip,iBanner"></script>
注:ad,adTopDown,logoTip,iBanner为动态引入的js文件。如 ad.js
下面是代码
/*
动态加载js v1.0 by:dum 2012-03-08 renwumao.com
用法:src="webJsBase.js?load=a,b"
注:加载本目录下js
*/
var webJsBase = {
require: function(libraryName) {
document.write('<script type="text/javascript" src="'+libraryName+'"><\/script>');
},
load: function(defaultLoad) {
if((typeof Prototype=='undefined')||(typeof Element == 'undefined')||(typeof Element.Methods=='undefined'))
throw ('prototype lib 加载失败!');
if(typeof defaultLoad=='undefined')defaultLoad='';
var js = /webJsBase\.js(\?.*)?$/;
$$('head script[src]').findAll(function(s) {
return s.src.match(js);
}).each(function(s) {
var path = s.src.replace(js, '');
var includes = s.src.match(/\?.*load=([a-zA-Z0-9_,]*)/);
(includes ? includes[1] : defaultLoad).split(',').each(function(include) {
webJsBase.require(path + include + '.js');
});
});
}
};
webJsBase.load();
摘自 renwumao.com(任务猫)
相关新闻>>
- 发表评论
-
- 最新评论 更多>>