最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

javascript中动态加载js文件多种解决办法总结_javascript技巧

来源:动视网 责编:小采 时间:2020-11-27 21:15:46
文档

javascript中动态加载js文件多种解决办法总结_javascript技巧

javascript中动态加载js文件多种解决办法总结_javascript技巧:一个比较全部在动态加方法 代码如下:/* 动态加载js v1.0 by:dum 用法:src=webJsBase.jsload=a,b 注:加载本目录下js*/var webJsBase = { require: function(libraryName) { document.write(''); }, load:
推荐度:
导读javascript中动态加载js文件多种解决办法总结_javascript技巧:一个比较全部在动态加方法 代码如下:/* 动态加载js v1.0 by:dum 用法:src=webJsBase.jsload=a,b 注:加载本目录下js*/var webJsBase = { require: function(libraryName) { document.write(''); }, load:


一个比较全部在动态加方法
代码如下:
/*
动态加载js v1.0 by:dum
用法:src="webJsBase.js?load=a,b"
注:加载本目录下js
*/
var webJsBase = {
require: function(libraryName) {
document.write('');
},
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(); //这里参数可以指定默认要加载的js文件

这是最简单的方法在加载完后再利用直接document.write 如下图。
代码如下:

document.write("");


给script加个id再去动态改变已有script的src 属性
代码如下:

s1.src="test.js"


这里利用getElementsByTagName('HEAD')动态创建 script元素

代码如下:

var oHead = document.getElementsByTagName('HEAD').item(0);

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

oScript.type = "text/javascript";

oScript.src="test.js";

oHead.appendChild( oScript);


还可以这样尝试一下,自定一个函数
代码如下:
function include(src) {
HTMLCode = '';
document.write(HTMLCode);
}

调用方法,这样看上去就你php的include函数了
代码如下:
include(baseDir + "/Prototype.js");
include(baseDir + "/Map.js");
include(baseDir + "/MapEvent.js");

include(baseDir + "/model/MapModel.js");
include(baseDir + "/model/MapType.js");
include(baseDir + "/model/Tile.js");

还有朋友说可以使用ExtJs4 动态加载js这里我就不介绍了,上面的方法足够让你实现动态加载js了.

所以在采用这类方法动态加载Js 的同时,主界面的Js脚本是继续执行的,所以可能出现通过异步加载的Js代码得不到预期的效果的情况。

这时候可以考虑采用Ajax加载Js的方法。

文档

javascript中动态加载js文件多种解决办法总结_javascript技巧

javascript中动态加载js文件多种解决办法总结_javascript技巧:一个比较全部在动态加方法 代码如下:/* 动态加载js v1.0 by:dum 用法:src=webJsBase.jsload=a,b 注:加载本目录下js*/var webJsBase = { require: function(libraryName) { document.write(''); }, load:
推荐度:
标签: 加载 方法 动态
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top