js點選實現多圖順序切換和迴圈切換效果程式碼
本章節分享一段程式碼例項,它利用js實現的多圖迴圈效果。
實現順序迴圈,當到達最後一張圖片以後會給出提示,當使用迴圈切換方式時候,可以實現迴圈切換。
下面就給出程式碼,並且給出詳細的介紹,程式碼如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> p { margin: 0; } input { border: none; outline: none; margin: 0; padding: 0; } img { width: 300px; height: 300px; } #loop { margin-left: 50px; background: #c80; width: 60px; height: 40px; font-size: 14px; line-height: 20px; text-align: center; } #order { margin-left: 50px; background: #c80; width: 60px; height: 40px; font-size: 14px; line-height: 20px; text-align: center; } div { width: 300px; height: 300px; position: relative; } span { position: absolute; left: 0; top: 0; width: 300px; height: 20px; font-size: 14px; line-height: 20px; background: #000; opacity: 0.5; color: #fff; text-align: center; } div p { position: absolute; left: 0; bottom: 0; width: 300px; height: 20px; font-size: 14px; line-height: 20px; text-align: center; color: #fff; background: #000; opacity: 0.5; } div input { position: absolute; width: 60px; height: 60px; top: 100px; background: pink; } #back { left: 0; } #next { right: 0; } </style> <script type="text/javascript"> window.onload = function () { //迴圈切換 var oNext = document.getElementById("next"); var oBack = document.getElementById("back"); var oImg = document.getElementById("img"); var oText = document.getElementById("text"); var oSpan = document.getElementById("span"); var oLoop = document.getElementById("loop"); var Oorder = document.getElementById('order'); var oText1 = document.getElementById("text1"); var aImg = ["demo/js/img/1.jpg", "demo/js/img/2.jpg", "demo/js/img/3.jpg", "demo/js/img/4.jpg"]; var aText = ["圖片1", "圖片2", "圖片3", "圖片4"]; var num = 0; //點選下一張事件 function next() { num = num + 1; //每次加一 //進行判斷,如果num大於最後一張時,圖片返回第一張 // 1 2 3 4 if (num > aImg.length - 1) { num = 0; } oImg.src = aImg[num]; oText.innerHTML = aText[num];//圖片資訊變化,與陣列關聯 oSpan.innerHTML = (num + 1) + "/" + aImg.length;//數量變化,與陣列關聯 } function back() { num = num - 1; //進行判斷,如果圖片小於第一張時,圖片返回最後一張 if (num < 0) { num = aImg.length - 1; } oImg.src = aImg[num]; oText.innerHTML = aText[num];//圖片資訊變化,與陣列關聯 oSpan.innerHTML = (num + 1) + "/" + aImg.length;//數量變化,與陣列關聯 } function next1() { num = num + 1; //每次加一 //進行判斷,如果num大於最後一張時,彈出警告並把圖片定在最後一張 // 1 2 3 4 if (num > aImg.length - 1) { num = aImg.length - 1; alert("最後一張了"); } oImg.src = aImg[num]; oText.innerHTML = aText[num]; oSpan.innerHTML = num + 1 + "/" + aImg.length; } function back1() { num = num - 1; //進行判斷,如果圖片小於第一張時,彈出警告並把圖片定在第一張 if (num < 0) { num = 0; alert("已經是第一張了"); } oImg.src = aImg[num]; oText.innerHTML = aText[num]; oSpan.innerHTML = num + 1 + "/" + aImg.length; } oNext.onclick = next; oBack.onclick = back; oLoop.onclick = function () { oText1.innerHTML = "圖片可以從第一張到最後一張迴圈切換"; oNext.onclick = next; oBack.onclick = back; } Oorder.onclick = function () { oText1.innerHTML = "圖片只能從第一張到最後一張順序切換"; oNext.onclick = next1; oBack.onclick = back1; } } </script> </head> <body> <input id="loop" type="button" name="" value="迴圈切換" /> <input id="order" type="button" name="" value="順序切換" /> <p id="text1">圖片可以從第一張到最後一張迴圈切換</p> <div> <input id="back" type="button" name="" value="上一張" /> <input id="next" type="button" name="" value="下一張" /> <img id="img" src="demo/js/img/1.jpg" /> <span id="span">1/4</span> <p id="text">圖片1</p> </div> </body> </html>
上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。
一.程式碼註釋:
(1).var oNext = document.getElementById("next"),獲取對應id的元素物件。
(2).var aImg = ["demo/js/img/1.jpg", "demo/js/img/2.jpg", "demo/js/img/3.jpg", "demo/js/img/4.jpg"],建立一個陣列,裡面存放的是圖片的地址。
(3).var aText = ["圖片1", "圖片2", "圖片3", "圖片4"],建立一個陣列,裡面存放的是文字說明。
(4).var num = 0,宣告一個變數並賦值為0,後面會有使用。
(5).function next() {
num = num + 1;
if (num > aImg.length - 1) {
num = 0;
}
oImg.src = aImg[num];
oText.innerHTML = aText[num];//圖片資訊變化,與陣列關聯
oSpan.innerHTML = (num + 1) + "/" + aImg.length;//數量變化,與陣列關聯
},作為可以迴圈的的下一張事件處理函式。
點選以後,num會加1,。
如果num的數目大於aImg.length - 1,因為num是從0開始,也就是超過了圖片的最大數目。
那麼就將num重置為0,也就是從頭再開始一遍。
然後根據索引設定src值,和文字內容。
二.相關閱讀:
(1).innerHTML屬性可以參閱innerHTML一章節。
(2).onclick事件可以參閱javascript click事件一章節。
相關文章
- 點選按鈕實現圖片切換效果
- 點選按鈕實現狀態切換效果
- 馬賽克效果的JS圖片切換程式碼JS
- jQuery選項卡切換圖片效果程式碼例項jQuery
- 成品直播原始碼,點選滑動切換效果原始碼
- jquery中點選切換的實現jQuery
- 點選按鈕實現隱藏和顯示的切換程式碼
- 點選按鈕實現切換頁面背景顏色效果
- js和css3實現的圖片立體滾動切換效果程式碼例項JSCSSS3
- js實現的點選連結<a>實現切換背景顏色JS
- 點選方向鍵實現文字框焦點切換程式碼例項
- jQuery點選按鈕實現div的隱藏和顯示切換效果jQuery
- 請問各位大佬,vue如何實現點選按鈕切換圖片的效果?Vue
- JS實現動態瀑布流及放大切換圖片效果(js案例)JS
- 在多個遊戲檢視間切換實現效果遊戲
- 關於ListView或控制元件選擇迴圈切換的實現方法View控制元件
- 滑鼠懸浮實現圖片動畫上下切換效果動畫
- JavaScript 圖片切換展示效果JavaScript
- 用CSS實現Tab頁切換效果CSS
- activity切換無動畫效果的實現動畫
- 如何實現選項卡切換
- 使用ViewPager和TabLayout來實現滑動切換效果ViewpagerTabLayout
- css實現滑鼠滑過切換背景圖片程式碼CSS
- 程式流程 (順序,選擇,迴圈)
- jquery實現的具有漸變效果的圖片切換jQuery
- JQuery實現簡單美觀的圖片切換效果jQuery
- 程式切換(上下文切換)
- 多執行緒實現順序迴圈列印執行緒
- 滑鼠虛滑過選項卡切換效果程式碼例項
- 用原生JS實現 圖片輪播切換 功能JS
- ios 卡片切換效果iOS
- javascript實現的圖片簡單切換程式碼例項JavaScript
- js圖片切換例項JS
- 點選密碼框明文和密文顯示切換密碼
- 小程式標籤頁切換效果
- android實現多圖片放大縮小的切換Android
- echart map圖示切換多選,單選,預設選中
- jQuery 圖片垂直切換效果詳解jQuery