JavaScript動態更改引入樣式表
本章節如何動態設定頁面的css樣式屬性,比如頁面的換膚效果也是通過此方式實現的。
當然比較完善的換膚效果要稍稍複雜一些,這只是介紹一下如何更改外部css樣式表。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <link href="css/blue.css" rel="stylesheet" id="mylink"/> <script type="text/javascript"> function gel(id){ return document.getElementById(id); } window.onload=function(){ var lis=gel("uList").childNodes; for (var i = 0; i < lis.length; i++){ if(lis[i].nodeType==1){ lis.onclick = function () { gel("mylink").href = "css/" + this.className + ".css"; }; } } }; </script> </head> <body> <div> <span>螞蟻部落歡迎您</span><br/> <input type="text" id="txt"/> <input type="button" value="提交" class="btn"/> </div> <ul id="uList"> <li style="width:30px;height:20px;background-color:red;" class="red"></li> <li style="width:30px;height:20px;background-color:blue" class="blue"></li> </ul> </body> </html>
以上程式碼點選li元素可以切換不同的樣式表效果,下面介紹一下它的實現過程。
一.程式碼註釋:
(1).function gel(id){return document.getElementById(id);},封裝了一下document.getElementById()函式,使用更方便。
(2).window.onload=function(){},當文件內容完全載入完畢再去執行函式中的程式碼。
(3).var lis=gel("uList").childNodes,獲取ul元素下的所有子節點,包括文字節點和元素節點,空白和換行屬於文字節點。
(4).for (var i = 0; i < lis.length; i++),遍歷每一個節點。
(5).if(lis.nodeType==1),判斷節點是否是元素節點。
(6).lis.onclick = function () {gel("mylink").href = "css/" + this.className + ".css";},註冊click事件處理函式,也就是點選li元素就會重新設定link標籤的href屬性值。
二.相關閱讀:
(1).nodeType屬性參閱js nodeType屬性一章節。
(2).childNodes屬性參閱js childNodes一章節。
(3).className參閱js className一章節。
相關文章
- javascript 動態修改css樣式JavaScriptCSS
- JavaScript動態建立div並新增樣式JavaScript
- html樣式表三種引入方式HTML
- lit動態修改樣式
- 引入CSS樣式 筆記CSS筆記
- vue基礎-動態樣式&表單繫結&vue響應式原理Vue
- 動態變更vue樣式Vue
- AndroidJava動態修改CheckBox樣式AndroidJava
- font-class引入css樣式,引入字型圖示CSS
- vue 按照官方文件引入element-ui樣式表時報錯VueUI
- ElementUI——elementui重複引入樣式UI
- 更改bootstrap的預設樣式boot
- Vue 動態繫結CSS樣式VueCSS
- JS動態引入模組JS
- 更改BootStrap popover的預設樣式boot
- 部落格園美化:CSS更改滑鼠樣式CSS
- js動態改變css偽類樣式JSCSS
- js動態建立元素,並控制元素樣式JS
- QSpinBox樣式表
- Qt更改按鈕樣式 (以QSpinBox使用左右按鈕樣式為例)QT
- Vue系列-import動態引入的坑VueImport
- 更改網站模板樣式顯示不出來網站
- 部落格園主題樣式更改總結
- Vue 框架-05-動態繫結 css 樣式Vue框架CSS
- 【JavaScript】DOM之樣式操作JavaScript
- android短視訊開發,自定義更改平臺主題以及狀態列樣式Android
- arcgis js:動態引入js、css依賴JSCSS
- Flutter 動態更改應用程式啟動圖示Flutter
- 動態更改svg圖片的顏色SVG
- nginx-通過lua動態更改upstreamNginx
- Win10如何更改游標指標顏色樣式 win10更改滑鼠指標顏色樣式的步驟Win10指標
- JavaScript 表單、物件、函式JavaScript物件函式
- vue專案,引入外掛element ui 樣式不生效VueUI
- vue中如何引入公共樣式的的styl檔案Vue
- 基於jq的bootstrap 常用樣式demo 引入css jq js檔案後樣式出現bootCSSJS
- WebKit Insie: Active 樣式表WebKit
- qt樣式表未生效QT
- QSpinBox樣式表設定