javascript - JS 網(wǎng)頁換膚之問題
問題描述
<link href='http://www.b3g6.com/wenda/green.css' rel='stylesheet' type='text/css' />
window.onload = function (){ var oLink = document.getElementsByTagName('link')[0]; var oSkin = document.getElementById('skin').getElementsByTagName('li');for(var i = 0; i< oSkin.length; i++) {oSkin[i].onclick = function (){ for(var p in oSkin) oSkin[p].className = ''; this.className = 'current'; oLink[’href’] = this.id + '.css';}} };
<body><p id='outer'> <ul id='skin'><li >紅</li><li >綠</li><li >黑</li> </ul> <ul id='nav'><li><a href='javascript:;'>新聞</a></li><li><a href='javascript:;'>娛樂</a></li><li><a href='javascript:;'>體育</a></li><li><a href='javascript:;'>電影</a></li><li><a href='javascript:;'>音樂</a></li><li class='last'><a href='javascript:;'>旅游</a></li> </ul></p></body>
this.className = 'current'表示什么? 是對應(yīng)當(dāng)前頁面是綠色狀態(tài)下的按鈕嗎
問題解答
回答1:this.className = 'current'; 將當(dāng)前被點擊的那個<li> 的class 設(shè)為 current,達到動態(tài)更改標(biāo)簽樣式的目的
回答2:.css 應(yīng)該是一個樣式文件,通過id來載入指定的皮膚樣式。
link 是一個 html element,用來載入資源的。
回答3:一般來說,換膚的話會涉及到很多CSS。我一般都會把外聯(lián)的CSS換掉來做這個功能。假設(shè)我現(xiàn)在有一個HTML文件和兩個HTML皮膚(就是倆CSS文件,一紅一黃)。簡單的代碼如下<!DOCTYPE html><html><head>
<meta charset='utf-8'><title>test</title><link rel='stylesheet' href='http://www.b3g6.com/wenda/red.css'>
</head><body>
<button id='red'>red</button><button id='yellow'>yellow</button><script> var css = document.getElementById('css'); var red = document.getElementById('red'); var yellow = document.getElementById('yellow'); red.onclick = function () {css.href = 'http://www.b3g6.com/wenda/red.css'; }; yellow.onclick = function () {css.href = 'http://www.b3g6.com/wenda/yellow.css'; };</script>
</body></html>大概就是這個感覺
回答4:你這個代碼應(yīng)該沒完,他這個代碼的意思估計是修改皮膚,動態(tài)加載css樣式。
相關(guān)文章:
1. golang - 用IDE看docker源碼時的小問題2. docker-compose中volumes的問題3. dockerfile - [docker build image失敗- npm install]4. angular.js - angular內(nèi)容過長展開收起效果5. 兩個思路:python模擬登陸頁面和模擬操作windows程序窗口提交請求6. 點選多選問題7. jupyter-notebook - Mac下啟動jupyter notebook后沒有Python的選項?8. angular.js - angularjs官網(wǎng)Demo quickstart-master在win10系統(tǒng)中啟動時報錯9. android - 如何實現(xiàn)QQ pad 點擊右側(cè)輸入框,只頂右側(cè)的布局,左側(cè)布局不動10. 用Python調(diào)用api之后,沒有輸出該如何解決?

網(wǎng)公網(wǎng)安備