JS實現(xiàn)網(wǎng)站換膚
本文實例為大家分享了JS實現(xiàn)網(wǎng)站換膚的具體代碼,供大家參考,具體內(nèi)容如下
先看效果

1、左側(cè)是待選擇的圖片列表
2、點擊對應(yīng)圖片自動為當(dāng)前網(wǎng)站換背景圖片
3、為當(dāng)前選擇的圖片加個2px的border
代碼如下:
<!DOCTYPE html>
<html lang="en">
<head>
? ? <meta charset="UTF-8">
? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">
? ? <title>網(wǎng)站換膚</title>
? ? <style>
? ? ? ? body {
? ? ? ? ? ? background: url(images/abc-123.jpg) no-repeat center;
? ? ? ? }
? ? ? ? ul li {
? ? ? ? ? ? list-style: none;
? ? ? ? }
? ? ? ? .baidu img {
? ? ? ? ? ? width: 100px;
? ? ? ? }
? ? ? ? .baidu li:hover img {
? ? ? ? ? ? border: 1px solid red;
? ? ? ? }
? ? </style>
</head>
<body>
? ? <ul class="baidu">
? ? ? ? <li><img src="images/Colorful-Abstraction01.jpg" alt=""></li>
? ? ? ? <li><img src="images/Colorful-Abstraction02.jpg" alt=""></li>
? ? ? ? <li><img src="images/Colorful-Abstraction03.jpg" alt=""></li>
? ? ? ? <li><img src="images/abc-123.jpg" alt=""></li>
? ? </ul>
? ? <script>
? ? ? ? // 獲取元素
? ? ? ? var imgs = document.querySelectorAll("img");
? ? ? ? // 注冊事件并處理
? ? ? ? for(var i = 0; i < imgs.length; i++){
? ? ? ? ? ? imgs[i].onclick = function(){
? ? ? ? ? ? ? ? document.body.style.backgroundImage = "url(" + this.src + ")";
? ? ? ? ? ? ? ? for(var i = 0; i < imgs.length; i++){
? ? ? ? ? ? ? ? ? ? imgs[i].style.border = "none";
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? this.style.border = "2px solid red";
? ? ? ? ? ? }
? ? ? ? }
? ? </script>
</body>
</html>×為當(dāng)前選擇的圖片加2px邊框前,需要使用for循環(huán)初始化所有圖片的邊框,不然點擊一個就會產(chǎn)生一個邊框。
for(var i = 0; i < imgs.length; i++){
? ? imgs[i].style.border = "none";
}接著再為當(dāng)前選擇的圖片加上邊框
this.style.border = "2px solid red";
×為body更換背景圖片時,需要注意css的寫法backgroundImage, 且還需注意js中字符換和變量的拼接方法
document.body.style.backgroundImage = "url(" + this.src + ")"以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
javascript用defineProperty實現(xiàn)簡單的雙向綁定方法
這篇文章主要介紹了javascript用defineProperty實現(xiàn)簡單的雙向綁定方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
一文詳解JS?類型轉(zhuǎn)換方法以及如何避免隱式轉(zhuǎn)換
這篇文章主要為大家介紹了JS?類型轉(zhuǎn)換方法以及如何避免隱式轉(zhuǎn)換示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
微信小程序wxml不能使用Array.includes條件判斷解決方法
這篇文章主要為大家介紹了微信小程序wxml不能使用Array.includes條件判斷解決方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11

