动态加载脚本和样式的Javascript方法

动态加载脚本和样式的Javascript方法
动态脚本

当站点需要更改时,脚本需要逐渐变大,我们必须引入太多js脚本并降低整个站点的性能;

因此,动态脚本的概念被提出,相应的脚本在正确的时间加载。
1。js文件动态导入
var标志=真;
如果(标志){
Loadscript('browserdetect .js); / /呼叫功能,引入路径;
}
函数加载脚本(URL){
VaR脚本= document.createelement('script '); / /创建一个脚本标签;
script.type =中 / / / Javascript的;设置类型属性;
script.src =网址 / /网址的介绍;
document.getelementsbytagname(很){ 0 }。appendChild(脚本); / /脚本将在;
}
2。js代码的动态执行
VaR脚本= document.createelement('script);
script.type =中/ Javascript的;
var text = document.createtextnode(警报('lee)); / /设置脚本标签内容;即会报错;
script.appendchild(文本);
document.getelementsbytagname(很){ 0 }。appendChild(剧本);

:IE浏览器,脚本是一个特殊的元素,可以问子节点重新访问;
为了兼容,可以使用文本属性替换;
功能loadscriptstring(代码){
VaR脚本= document.createelement(脚本);
script.type =文本/ javascript;
尝试{
IE浏览器是脚本的一个特殊元素,不能再问子节点错误了;
script.appendchild(document.createtextnode(代码)); / / W3C;
} catch(前){
script.text =代码; / / IE;
}
document.body.appendchild(剧本);
}
调用;
LoadscriptString(功能sayhi(){ alert('嗨')});
两个动态风格

为了动态加载样式表,如开关部位皮肤;

有两种加载样式的方法,一种是标签,另一种是标签。

1。动态引入链接文件
var标志=真;
如果(标志){
LoadStyles(基本。CSS); / /呼叫功能,引入路径;
}
功能loadstyles(URL){
VaR链接= document.createelement('link);
link.rel = 'stylesheet;
link.type =中/ CSS的;
link.href =网址;
document.getelementsbytagname(很){ 0 }。appendChild(链接);
}
2。样式代码的动态执行
var标志=真;
如果(标志){
VaR的风格= docuemnt.createelement('style);
style.type =中/ CSS的;
document.getelementsbytagname(很){ 0 }。appendChild(风格);
InsertRule(文档样式表{ 0 },#盒子,背景:红',0);
}
功能insertrule(片、selectortext,csstext,位置){
如果不是IE / ;
如果(表。insertrule){
Sheet.insertRule(selectortext +{+ csstext +}
如果它是IE;
} else if(表。addrule){
Sheet.addRule(selectortext,csstext,位置);
}
}

的方式2 / /动态执行
功能loadstylestring(CSS){
VaR的风格= document.createelement(风格);
style.type =文本/ CSS;
尝试{
ie /错误;不允许向元素添加节点;
style.appendchild(document.createtextnode(CSS));
} catch(前){
在这个时候,样式表属性来访问元素的属性,有csstext属性可以接受的CSS代码;
style.stylesheet.csstext = CSS;
}
VaR的头= document.getelementsbytagname(头){ 0 };
head.appendchild(风格);
}
调用;
LoadStyleString(体{背景颜色:红} );

tag:脚本方法动态加载样式电脑软件

相关内容