js實(shí)現(xiàn)簡(jiǎn)單圖片切換
本文實(shí)例為大家分享了JavaScript實(shí)現(xiàn)圖片間切換的具體代碼,供大家參考,具體內(nèi)容如下
代碼的主要思路:
1、先給“下一張”和“上一張”兩個(gè)按鈕綁定單擊響應(yīng)事件;
2、獲取img標(biāo)簽對(duì)象,用于修改src屬性的值,實(shí)現(xiàn)圖片的切換;
3、切換圖片實(shí)質(zhì)上就是修改img標(biāo)簽里面src屬性的值;
4、創(chuàng)建一個(gè)數(shù)組用來保存圖片,這樣的話,在圖片切換的過程中操作起來會(huì)更加方便,只要操作數(shù)組的索引即可,如要切換到下一張,將imgArr[0]---->imgArr[1],即可;
5、創(chuàng)建一個(gè)變量用來保存當(dāng)前正在顯示的圖片的索引,這樣操作圖片更加簡(jiǎn)單;
6、需要注意的是,如果當(dāng)前顯示的圖片為最后一張時(shí),下一張使它自動(dòng)跳回第一張;同理如果當(dāng)前顯示的圖片為第一張時(shí),上一張使它自動(dòng)跳回最后一張;
7、設(shè)置頂部的文字先要獲取對(duì)應(yīng)的p標(biāo)簽對(duì)象;
8、通過修改p標(biāo)簽里面的文字就可以實(shí)現(xiàn)頂部文字的實(shí)時(shí)變換;
<!DOCTYPE html> <html lang="en"> <head> ? ? <meta charset="UTF-8"> ? ? <title>圖片切換練習(xí)</title> ? ? <style type="text/css"> ? ? ? ? * { ? ? ? ? ? ? margin: 0; ? ? ? ? ? ? padding: 0; ? ? ? ? } ? ? ? ? #outer { ? ? ? ? ? ? width: 500px; ? ? ? ? ? ? margin: 50px auto; ? ? ? ? ? ? padding: 30px; ? ? ? ? ? ? background-color: aquamarine; ? ? ? ? } ? ? </style> ? ? <script type="text/javascript"> ? ? ? ? window.onload = function () { ? ? ? ? ? ? /** ? ? ? ? ? ? ?* 點(diǎn)擊按鈕實(shí)現(xiàn)圖片的切換 ? ? ? ? ? ? ?*/ ? ? ? ? ? ? ? ? //3、獲取img標(biāo)簽 ? ? ? ? ? ? var img = document.getElementsByTagName("img")[0]; ? ? ? ? ? ? //5、創(chuàng)建一個(gè)數(shù)組用于保存圖片的路徑 ? ? ? ? ? ? var imgArr = ["img/1.jpg", "img/2.jpg", "img/3.jpg", "img/4.jpg", "img/5.jpg"]; ? ? ? ? ? ? //6、創(chuàng)建一個(gè)變量保存當(dāng)前正在顯示的圖片的索引 ? ? ? ? ? ? var index = 0;//默認(rèn)顯示的是第一張 ? ? ? ? ? ? //8、獲取id為info的元素 ? ? ? ? ? ? var info = document.getElementById("info"); ? ? ? ? ? ? //9、設(shè)置提示文字 ? ? ? ? ? ? info.innerHTML = "一共" + imgArr.length + "張圖片, 這是第" + (index + 1) + "張"; ? ? ? ? ? ? //1、給上一張按鈕綁定單擊事件 ? ? ? ? ? ? var prev = document.getElementById("prev"); ? ? ? ? ? ? prev.onclick = function () { ? ? ? ? ? ? ? ? //7、當(dāng)索引為第一張時(shí),那么就要將索引設(shè)置為最后一張,由于采用的是--index,所以將index設(shè)置為5 ? ? ? ? ? ? ? ? if (index == 0) { ? ? ? ? ? ? ? ? ? ? index = 5; ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? index = index - 1; ? ? ? ? ? ? ? ? //4、切換圖片,實(shí)質(zhì)上就是修改img里面的src屬性 ? ? ? ? ? ? ? ? img.src = imgArr[index]; ? ? ? ? ? ? ? ? //9、設(shè)置提示文字 ? ? ? ? ? ? ? ? info.innerHTML = "一共" + imgArr.length + "張圖片, 這是第" + (index + 1) + "張"; ? ? ? ? ? ? } ? ? ? ? ? ? //2、給下一張按鈕綁定單擊事件 ? ? ? ? ? ? var next = document.getElementById("next"); ? ? ? ? ? ? next.onclick = function () { ? ? ? ? ? ? ? ? //7、當(dāng)索引為最后一張時(shí),那么就要將索引設(shè)置為第一張,由于采用的是++index,所以將index設(shè)置為-1 ? ? ? ? ? ? ? ? if (index == 4) { ? ? ? ? ? ? ? ? ? ? index = -1; ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? index = index + 1; ? ? ? ? ? ? ? ? //4、切換圖片,實(shí)質(zhì)上就是修改img里面的src屬性 ? ? ? ? ? ? ? ? img.src = imgArr[index]; ? ? ? ? ? ? ? ? //9、設(shè)置提示文字 ? ? ? ? ? ? ? ? info.innerHTML = "一共" + imgArr.length + "張圖片, 這是第" + (index + 1) + "張"; ? ? ? ? ? ? } ? ? ? ? } ? ? </script> </head> <body> <div id=outer align="center"> ? ? <p id=info></p> ? ? <img src="img/1.jpg" alt="冰棍"/><br/> ? ? <button id="prev">上一張</button> ? ? <button id="next">下一張</button> </div> </body> </html>
完成后的效果:每次點(diǎn)擊下一張或者上一張會(huì)實(shí)現(xiàn)圖片的切換,同時(shí)頂部的提示文字也會(huì)隨之發(fā)生改變。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 最簡(jiǎn)單的js圖片切換效果實(shí)現(xiàn)代碼
- 用html+css+js實(shí)現(xiàn)的一個(gè)簡(jiǎn)單的圖片切換特效
- 純js實(shí)現(xiàn)背景圖片切換效果代碼
- 簡(jiǎn)單的實(shí)現(xiàn)點(diǎn)擊箭頭圖片切換的js代碼
- css圖片切換效果代碼[不用js]
- 純js無flash仿搜狐女人頻道FLASH圖片切換效果代碼
- javascript實(shí)現(xiàn)圖片切換的幻燈片效果源代碼
- JS實(shí)現(xiàn)圖片切換效果
- JavaScript實(shí)現(xiàn)圖片切換效果
- js鼠標(biāo)點(diǎn)擊圖片切換效果代碼分享
相關(guān)文章
給localStorage設(shè)置一個(gè)過期時(shí)間的方法分享
我們都知道localStorage不主動(dòng)刪除,永遠(yuǎn)不會(huì)銷毀,那么如何設(shè)置localStorage的過期時(shí)間呢?下面這篇文章主要給大家介紹了關(guān)于如何給localStorage設(shè)置一個(gè)過期時(shí)間的相關(guān)資料,需要的朋友可以參考下2018-11-11JavaScript 實(shí)現(xiàn)鼠標(biāo)拖動(dòng)元素實(shí)例代碼
這篇文章主要介紹了JavaScript 實(shí)現(xiàn)鼠標(biāo)拖動(dòng)元素實(shí)例代碼,需要的朋友可以參考下2014-02-02JS彈窗 JS彈出DIV并使整個(gè)頁(yè)面背景變暗功能的實(shí)現(xiàn)代碼
這篇文章主要介紹了JS彈窗 JS彈出DIV并使整個(gè)頁(yè)面背景變暗功能的實(shí)現(xiàn)代碼,需要的朋友可以參考下2018-04-04JS實(shí)現(xiàn)的跨瀏覽器解析XML文件實(shí)例
這篇文章主要介紹了JS實(shí)現(xiàn)的跨瀏覽器解析XML文件的方法,結(jié)合實(shí)例形式分析了javascript基于ActiveXObject操作xml文件的加載與解析相關(guān)技巧,需要的朋友可以參考下2016-06-06