js圖片切換具體實(shí)現(xiàn)代碼
本文實(shí)例為大家分享了js實(shí)現(xiàn)圖片切換的方法,供大家參考,具體內(nèi)容如下
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> <title></title> <style> *{ margin:0; padding:0; } .all{ width:600px; height:350px; position:relative; overflow:hidden; margin:100px auto; } .all ul{ z-index:1; position:relative; } .all ul li{ position:absolute; top:0; left:0; } .all ol{ position:absolute; right:10px; bottom:10px; z-index:2; } .all ol li{ width:20px; height:20px; border:1px solid #fff; background-color:#333; float:left; overflow:hidden; margin-right:10px; text-align:center; line-height:20px; color:#fff; margin-top:10px; font-weight:bold; } .all ol .current{ width:30px; height:30px; border:1px solid #f60; color:#f60; line-height:30px; margin-top:0; cursor:pointer; } </style> <script> //通過id值獲得元素的函數(shù) function $(id){ return document.getElementById(id); } //初始化函數(shù) function initial(){ olLi=document.getElementsByTagName('ol')[0].getElementsByTagName('li');//獲取ol下的li ol=$('tab');//獲取ol元素 theImg=$('theImg'); //五張圖片的地址 addressPic=['01.jpg','02.jpg','03.jpg','04.jpg','05.jpg']; //遍歷ol下的li for(var i=0;i<olLi.length;i++){ //依次給每個(gè)li綁定mouseover事件,該事件執(zhí)行切換圖片的函數(shù) olLi[i].addEventListener('mouseover',changePicture,false); olLi[i].index=i;//設(shè)置ol li的index序列號(hào) } } //切換圖片 function changePicture(e){ e.target.className="current";//將選中的ol下的li的class屬性設(shè)置為current,e.target代表選中的li //清除ol里的空白節(jié)點(diǎn) cleanWhitespace(ol); //刪除除當(dāng)前選中的li外其他li的class屬性值 nextNode=e.target.nextSibling;//當(dāng)前節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn) lastNode=e.target.previousSibling;//當(dāng)前節(jié)點(diǎn)的前一個(gè)節(jié)點(diǎn) while(nextNode){//將當(dāng)前節(jié)點(diǎn)后所有的兄弟節(jié)點(diǎn)的class屬性清除 nextNode.setAttribute('class',''); nextNode=nextNode.nextSibling; } while(lastNode){//將當(dāng)前節(jié)點(diǎn)前面所有的兄弟節(jié)點(diǎn)的class屬性清除 lastNode.className=''; lastNode=lastNode.previousSibling; } //實(shí)現(xiàn)切換圖片的功能 theImg.src=addressPic[this.index]; } //清除ol下的空白節(jié)點(diǎn) function cleanWhitespace(oElement) { for(var i=0;i<oElement.childNodes.length;i++){ var node=oElement.childNodes[i]; if(node.nodeType==3 && !/\S/.test(node.nodeValue)){ node.parentNode.removeChild(node) } } } //給窗體綁定load事件,執(zhí)行初始化函數(shù)initial() window.addEventListener('load',initial,false); </script> </head> <body> <div class="all"> <ul> <li><img id="theImg" src="01.jpg" width="600px" height="350px"/></li> </ul> <ol id="tab"> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li class="current">5</li> </ol> </div> </body> </html>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- js組件SlotMachine實(shí)現(xiàn)圖片切換效果制作抽獎(jiǎng)系統(tǒng)
- 基于javascript實(shí)現(xiàn)圖片切換效果
- javascript圖片切換綜合實(shí)例(循環(huán)切換、順序切換)
- 輕松實(shí)現(xiàn)JavaScript圖片切換
- js實(shí)現(xiàn)索引圖片切換效果
- js鼠標(biāo)點(diǎn)擊圖片切換效果實(shí)現(xiàn)代碼
- js帶前后翻頁的圖片切換效果代碼分享
- 最簡單的js圖片切換效果實(shí)現(xiàn)代碼
- 用html+css+js實(shí)現(xiàn)的一個(gè)簡單的圖片切換特效
- 純js實(shí)現(xiàn)背景圖片切換效果代碼
相關(guān)文章
JavaScript每天必學(xué)之?dāng)?shù)組和對象部分
JavaScript每天必學(xué)之?dāng)?shù)組和對象部分,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09基于input框覆蓋掉數(shù)字英文的實(shí)例講解
下面小編就為大家?guī)硪黄趇nput框覆蓋掉數(shù)字英文的實(shí)例講解。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07JavaScript setTimeout與setTimeinterval使用案例詳解
這篇文章主要介紹了JavaScript setTimeout與setTimeinterval使用案例詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08JavaScript中遍歷對象的property的3種方法介紹
這篇文章主要介紹了JavaScript中遍歷對象的property的3種方法介紹,本文先是講解了3種方法并用一張圖片加深理解,然后給出代碼實(shí)例,需要的朋友可以參考下2014-12-12利用H5api實(shí)現(xiàn)時(shí)鐘的繪制(javascript)
這篇文章主要為大家詳細(xì)介紹了利用H5api實(shí)現(xiàn)時(shí)鐘的繪制,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-09-09JS動(dòng)態(tài)修改網(wǎng)頁body的背景色實(shí)例代碼
這篇文章主要介紹了JS動(dòng)態(tài)修改網(wǎng)頁body的背景色實(shí)例代碼 ,需要的朋友可以參考下2017-10-10