javascript - JS 網(wǎng)頁換膚之問題
問題描述
<link href='http://www.cgvv.com.cn/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)前被點(diǎn)擊的那個(gè)<li> 的class 設(shè)為 current,達(dá)到動(dòng)態(tài)更改標(biāo)簽樣式的目的
回答2:.css 應(yīng)該是一個(gè)樣式文件,通過id來載入指定的皮膚樣式。
link 是一個(gè) html element,用來載入資源的。
回答3:一般來說,換膚的話會(huì)涉及到很多CSS。我一般都會(huì)把外聯(lián)的CSS換掉來做這個(gè)功能。假設(shè)我現(xiàn)在有一個(gè)HTML文件和兩個(gè)HTML皮膚(就是倆CSS文件,一紅一黃)。簡單的代碼如下<!DOCTYPE html><html><head>
<meta charset='utf-8'><title>test</title><link rel='stylesheet' href='http://www.cgvv.com.cn/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.cgvv.com.cn/wenda/red.css'; }; yellow.onclick = function () {css.href = 'http://www.cgvv.com.cn/wenda/yellow.css'; };</script>
</body></html>大概就是這個(gè)感覺
回答4:你這個(gè)代碼應(yīng)該沒完,他這個(gè)代碼的意思估計(jì)是修改皮膚,動(dòng)態(tài)加載css樣式。
相關(guān)文章:
1. docker gitlab 如何git clone?2. mysql - 記得以前在哪里看過一個(gè)估算時(shí)間的網(wǎng)站3. dockerfile - [docker build image失敗- npm install]4. angular.js - angularjs如何傳遞id給另一個(gè)視圖 根據(jù)id獲取json數(shù)據(jù)?5. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?6. nginx啟用gzip壓縮后,文件尺寸無變化.7. docker start -a dockername 老是卡住,什么情況?8. 數(shù)據(jù)庫無法進(jìn)入9. 使用text-shadow可以給圖片加陰影嗎?10. 在windows下安裝docker Toolbox 啟動(dòng)Docker Quickstart Terminal 失敗!
