精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
html動態加載css樣式和js腳本示例
userphoto

2014.05.09

關注
點評:這篇文章主要介紹了html動態加載css樣式和js腳本示例,需要的朋友可以參考下

一、動態加載腳本

當網站需求變大,腳本的需求也逐步變大。我們就不得不引入太多的 JS 腳本而降低了整站的性能,所以就出現了動態腳本的概念,在適時的時候加載相應的腳本。
比如:我們想在需要檢測瀏覽器的時候,再引入檢測文件。


復制代碼
代碼如下:

<script type="text/javascript">
window.onload = function(){
alert(typeof BrowserDetect);
}
var flag = true; //設置 true 再加載
if (flag) {
loadScript('browserdetect.js'); //設置加載的 js
}
function loadScript(url) {
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = url;
//document.head.appendChild(script); //document.head 表示<head>
document.getElementsByTagName('head')[0].appendChild(script);
}
</script>動態執行 js</p><p>
<script type="text/javascript">
window.onload = function(){

}
var flag = true; //設置 true 再加載
if (flag) {
var script = document.createElement('script');
script.type = 'text/javascript';
var text = document.createTextNode("alert('Lee')"); //IE6,7,8 瀏覽器報錯
script.appendChild(text);
document.getElementsByTagName('head')[0].appendChild(script);
}
</script>IE 6,7,8瀏覽器認為 script 是特殊元素,不能在訪問子節點。為了兼容,可以使用 text屬性來代替。</p><p>
<script type="text/javascript">
window.onload = function(){

}
var flag = true; //設置 true 再加載
if (flag) {
var script = document.createElement('script');
script.type = 'text/javascript';
script.text = "alert('Lee')";
script.appendChild(text);
document.getElementsByTagName('head')[0].appendChild(script);
}
</script>需要做所有瀏覽器兼容

二、動態加載樣式

為了動態的加載樣式表,比如切換網站皮膚。樣式表有兩種方式進行加載,一種是<link>標簽,一種是<style>標簽。

動態執行 link


復制代碼
代碼如下:

var flag = true;
if (flag) {
loadStyles('basic.css');
}
function loadStyles(url) {
var link = document.createElement('link');link.rel = 'stylesheet';
link.type = 'text/css';
link.href = url;
document.getElementsByTagName('head')[0].appendChild(link);
}

   
動態執行 style


復制代碼
代碼如下:

<script type="text/javascript">
var flag = true;
if (flag) {
var style = document.createElement('style');
style.type = 'text/css';
//var box= document.createTextNode('#box{background:red}');// IE6,7,8 不支持
//style.appendChild(box);
document.getElementsByTagName('head')[0].appendChild(style);
insertRule(document.styleSheets[0], '#box', 'background:red', 0);
}
function insertRule(sheet, selectorText, cssText, position) {
//如果是非 IE6,7,8
if (sheet.insertRule) {
sheet.insertRule(selectorText + "{" + cssText + "}", position);
//如果是 IE6,7,8
} else if (sheet.addRule) {
sheet.addRule(selectorText, cssText, position);
}
}
</script>

本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
JavaScript動態加載CSS的三種方法
動態加載JS腳本的4種方法(修改版)
JS的阻塞特性
js動態加載腳本
預加載
JavaScript基礎
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 乌拉特前旗| 桓仁| 江门市| 湖北省| 伽师县| 张北县| 南开区| 台安县| 金华市| 嘉祥县| 胶南市| 偃师市| 韶关市| 平南县| 重庆市| 时尚| 涞源县| 海淀区| 丰原市| 囊谦县| 鹤庆县| 瓮安县| 开江县| 潢川县| 莱阳市| 大洼县| 峨边| 洛扎县| 罗江县| 胶州市| 密云县| 泸溪县| 樟树市| 定兴县| 腾冲县| 伊川县| 普洱| 长宁县| 温州市| 台北县| 茶陵县|