利用js來實現(xiàn)簡單圖片切換怎么做?直奔主題吧。
我們要說下代碼的主要思路:
1、先給“下一張”和“上一張”兩個按鈕綁定單擊響應(yīng)事件;
2、獲取img標簽對象,用于修改src屬性的值,實現(xiàn)圖片的切換;
3、切換圖片實質(zhì)上就是修改img標簽里面src屬性的值;
4、創(chuàng)建一個數(shù)組用來保存圖片,這樣的話,在圖片切換的過程中操作起來會更加方便,只要操作數(shù)組的索引即可,如要切換到下一張,將imgArr[0]---->imgArr[1],即可;
5、創(chuàng)建一個變量用來保存當(dāng)前正在顯示的圖片的索引,這樣操作圖片更加簡單;
6、需要注意的是,如果當(dāng)前顯示的圖片為最后一張時,下一張使它自動跳回第一張;同理如果當(dāng)前顯示的圖片為第一張時,上一張使它自動跳回最后一張;
7、設(shè)置頂部的文字先要獲取對應(yīng)的p標簽對象;
8、通過修改p標簽里面的文字就可以實現(xiàn)頂部文字的實時變換;
<!DOCTYPE html> <html> <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 () { /** * 點擊按鈕實現(xiàn)圖片的切換 */ //3、獲取img標簽 var img = document.getElementsByTagName("img")[0]; //5、創(chuàng)建一個數(shù)組用于保存圖片的路徑 var imgArr = ["img/1.jpg", "img/2.jpg", "img/3.jpg", "img/4.jpg", "img/5.jpg"]; //6、創(chuàng)建一個變量保存當(dāng)前正在顯示的圖片的索引 var index = 0;//默認顯示的是第一張 //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è)置為最后一張,由于采用的是--index,所以將index設(shè)置為5 if (index == 0) { index = 5; } index = index - 1; //4、切換圖片,實質(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è)置為第一張,由于采用的是++index,所以將index設(shè)置為-1 if (index == 4) { index = -1; } index = index + 1; //4、切換圖片,實質(zhì)上就是修改img里面的src屬性 img.src = imgArr[index]; //9、設(shè)置提示文字 info.innerHTML = "一共" + imgArr.length + "張圖片, 這是第" + (index + 1) + "張"; } } </script> </head> <body> <div id=outer> <p id=info></p> <img src="img/1.jpg" alt="冰棍"/><br/> <button id="prev">上一張</button> <button id="next">下一張</button> </div> </body> </html>
完成后的效果:實際就是在每次點擊下一張或者上一張會實現(xiàn)圖片的切換,同時頂部的提示文字也會隨之發(fā)生改變。
內(nèi)容已講完,更多實操各位自己動手操作吧。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/128214.html
摘要:既然我們知道了方法,我們就來給它加一個簡單的動畫。動畫中還給我們提供了一些鉤子函數(shù),我們可以使用鉤子函數(shù)構(gòu)建動畫。它會告知我們的動畫完成,我們綁定了為,告訴組件跳過的檢測,使用。 項目開發(fā)中動畫有著很重要的作用,而且也是用到的地方非常多,例如:鼠標的進入離開,彈窗效果,組件的顯示隱藏,列表的切換等等,可以說我們網(wǎng)頁上的動畫無處不在,也有人說了,這些東西也可以不使用動畫。 對,你說的沒錯...
摘要:在這里簡單敘述一下我仿某魚部分布局以及功能實現(xiàn)的過程,僅做學(xué)習(xí)用途。另一方面,當(dāng)與現(xiàn)代化的工具鏈以及各種支持類庫結(jié)合使用時,也完全能夠為復(fù)雜的單頁面應(yīng)用提供驅(qū)動??梢赃M行確認收貨后刪除訂單。 前言 每次寫文章時,總會覺得比寫代碼難多了,可能這就是我表述方面的不足吧,然而寫文章也是可以復(fù)盤一下自己的開發(fā)過程,對自己還是受益良多的。在這里簡單敘述一下我仿某魚部分布局以及功能實現(xiàn)的過程,僅做...
摘要:站在這個時間點上,我對自己之前三次失敗的面試經(jīng)歷做了一次深度回顧。關(guān)于我第三次面試失敗的經(jīng)歷,依然是與輪播圖有關(guān)。當(dāng)然,這次思特奇面試之旅,最后也是以失敗告終,這也是我離進大廠最近的一次。 showImg(https://segmentfault.com/img/bVYQuP?w=528&h=513); 前言 時間的齒輪已經(jīng)來到了2017年的11月份,距離2018年僅僅還剩下不到兩...
閱讀 570·2023-03-27 18:33
閱讀 761·2023-03-26 17:27
閱讀 658·2023-03-26 17:14
閱讀 612·2023-03-17 21:13
閱讀 546·2023-03-17 08:28
閱讀 1836·2023-02-27 22:32
閱讀 1330·2023-02-27 22:27
閱讀 2212·2023-01-20 08:28