javascript 動態(tài)樣式添加的簡單實(shí)現(xiàn)
異步加載css文件或者異步加載css模塊,支持所有瀏覽器,包括IE,參考至javascript高級編程
1.createLink方法用于創(chuàng)建一個style標(biāo)簽并添加到head標(biāo)簽中
2.createModule方法用于創(chuàng)建一個style樣式表的標(biāo)簽,并且如果在IE8以下的版本運(yùn)行會拋出異常,在異常捕獲模塊中執(zhí)行style.styleSheet.cssText兼容IE添加style的樣式內(nèi)容。
<button id="demo">css文件</button> <button id="demo1">css模塊</button> <script type="text/javascript"> //異步加載css文件,支持所有瀏覽器 document.getElementById("demo").onclick = function () { createLink("../../css/demo.css"); } function createLink(src) { var link = document.createElement("link"); link.rel = "stylesheet" link.type = "text/css"; link.href = src; document.getElementsByTagName("head")[0].appendChild(link); } //IE將<style>視為一個特殊的與<script>類似的節(jié)點(diǎn),不允許其訪問子節(jié)點(diǎn),事實(shí)上,IE此時拋出的錯誤與向<script>元素添加子節(jié)點(diǎn)時拋出的錯誤相同, //解決IE中的這個問題的辦法就是訪問元素的styleSheet屬性,該屬性又有一個CSSText屬性,可以接受css代碼 document.getElementById("demo1").onclick = function () { createModule("body{background:green;}"); } function createModule(css) { var style = document.createElement("style"); style.type = "text/css"; try { style.appendChild(document.createTextNode(css)); } catch (ex) { style.styleSheet.cssText = css; } document.getElementsByTagName("head")[0].appendChild(style); } </script>
以上就是小編為大家?guī)淼膉avascript 動態(tài)樣式添加的簡單實(shí)現(xiàn)全部內(nèi)容了,希望大家多多支持腳本之家~
相關(guān)文章
JS實(shí)現(xiàn)table表格數(shù)據(jù)排序功能(可支持動態(tài)數(shù)據(jù)+分頁效果)
這篇文章主要介紹了JS實(shí)現(xiàn)table表格數(shù)據(jù)排序功能(可支持動態(tài)數(shù)據(jù)+分頁效果) 的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友一起看看吧2016-05-05JavaScript變速動畫函數(shù)封裝添加任意多個屬性
這篇文章主要介紹了JavaScript變速動畫函數(shù)封裝添加任意多個屬性 ,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-04-04每天一篇javascript學(xué)習(xí)小結(jié)(Function對象)
這篇文章主要介紹了javascript中的Function對象知識點(diǎn),對Function對象的基本使用方法,以及各種方法進(jìn)行整理,感興趣的小伙伴們可以參考一下2015-11-11Bootstrap整體框架之JavaScript插件架構(gòu)
這篇文章主要介紹了Bootstrap整體框架之JavaScript插件架構(gòu)的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-12-12JavaScript/Js腳本處理html元素的自定義屬性解析(親測兼容Firefox與IE)
這篇文章主要是對JavaScript/Js腳本處理html元素的自定義屬性解析(親測兼容Firefox與IE)進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11利用JavaScript實(shí)現(xiàn)繪制2023新年煙花的示例代碼
大家過年好!新春佳節(jié),在這個充滿喜悅的日子里,愿新年的鐘聲帶給你一份希望和期待。在這喜慶的日子里,小編和大家分享一個煙花代碼,希望大家能夠喜歡2023-01-01JavaScript(JS) 壓縮 / 混淆 / 格式化 批處理工具
本工具所有的功能實(shí)現(xiàn)都是由 ttp://jscompress.sinaapp.com/api 處理.(包括現(xiàn)在可以使用的這個在線壓縮)2010-12-12微信小程序中的數(shù)據(jù)存儲實(shí)現(xiàn)方式
這篇文章主要介紹了微信小程序中的數(shù)據(jù)存儲實(shí)現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-08-08