色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

JS輪播圖的實現方法

瀏覽:125日期:2024-04-24 10:25:59

本文實例為大家分享了JS輪播圖的實現代碼,供大家參考,具體內容如下

需求:

自動輪播,鼠標移入輪播停止、移出繼續,小圓點點擊切圖,左右箭頭切圖

效果圖:

JS輪播圖的實現方法

思路

通過編寫過渡動畫實現輪播效果,圖片的出現動畫以及移出動畫。顯示區的圖片移出,切換的圖進入分別調用動畫,程序關鍵點:哪張圖應該進入,哪張圖應該移出。

輪播分為三部分:

自動輪播,左右箭頭翻圖,底部小圓點點擊翻圖。

編寫程序順序:

1. 小圓點點擊

為什么先做小圓點呢?做小圓點點擊功能時,我們能夠清晰的知道哪張圖片應該切換過來,哪張圖片應該移開。例如,顯示區是第一張圖時,點擊第二個原點,那么當前的第一張圖應該移開,第二圖應該進入。

2.左右箭頭切換

這部分功能,我們可以這種思路,當點擊左箭頭時,相當于我們按順序點擊1、2、3號小圓點,只是顯示區為3號圖時,我們需要將下一張設置為1號圖。所以加一個判斷條件即可,當計數器為3時,重置為1;右邊箭頭相反即可 順序變為3、2、1,當當計數器為1時,重置為3。

3.自動輪播

這功能就相當于在一定的時間間隔內,點擊右邊箭頭或者左邊箭頭。

HTML部分:

<div id='banner'> <div class='w'> <!-- 左右箭頭--> <span onclick='arrow_left()'></span> <span onclick='arrow_right()'></span> <!-- 輪播圖--> <ul> <li><img src='http://www.lshqa.cn/bcjs/img/1.jpg' alt=''></li> <li style='left: 1000px'><img src='http://www.lshqa.cn/bcjs/img/2.jpg' alt='' ></li> <li style='left: 1000px'><img src='http://www.lshqa.cn/bcjs/img/3.jpg' alt='' ></li> </ul> <!-- /小圓點--> <ol id='circleContainer'> <li onclick='move(0)'></li> <li onclick='move(1)'></li> <li onclick='move(2)'></li> </ol> </div></div>

CSS部分:

<style> *{ margin: 0; padding: 0; list-style: none; } .w { width: 1000px; height: 600px; margin: 100px auto 0; position: relative; overflow: hidden; } ul { height: 600px; } @keyframes leftCome { from { left: -100%; } to { left: 0; } } @keyframes leftOut { from { left: 0; } to { left: 100%; } } @keyframes rightCome { from { left: 100%; } to { left: 0; } } @keyframes rightOut { from { left: 0; } to { left: -100%; } } ul li { position: absolute; width: 1000px; } ul li img { width: 100%; height: 600px; } .iconfont { color: white; position: absolute; font-size: 30px; top: calc(50% - 15px); background-color: rgba(216, 216, 216, 0.23); cursor: pointer; opacity: 0; transition: opacity .3s linear; z-index: 999; } .iconfont:hover { color: palegreen; } .icon-zuojiantou { left: 0; border-top-right-radius: 50%; border-bottom-right-radius: 50%; } .icon-youjiantou { right: 0; border-top-left-radius: 50%; border-bottom-left-radius: 50%; } #circleContainer { position: absolute; bottom: 10px; left: calc(50% - 30px); } #circleContainer li { display: inline-block; width: 20px; height: 20px; border-radius: 50%; background-color: white; margin-right: 5px; } #circleContainer .change { background-color: palegreen; box-shadow: 0 0 10px #7dd07d; }</style>

JS部分:

<script> let timer ; window.onload = function(){ timer = setInterval(function () { arrow_left(); },3000) }; let arrow = document.querySelectorAll('.iconfont'); let w = document.querySelector('.w'); let circle = document.querySelectorAll('ol li'); w.addEventListener('mouseenter',function () { clearInterval(timer); arrow[0].style.opacity = '1'; arrow[1].style.opacity = '1'; }); w.addEventListener('mouseleave',function () { arrow[0].style.opacity = '0'; arrow[1].style.opacity = '0'; timer = setInterval(function () { arrow_left(); },3000) }); circle[0].className = 'change'; let location_i = 0; let li = document.querySelectorAll('ul li'); // 移動函數 function move(i,direcTion_) { if (direcTion_ === 'right') { if (location_i !== i) { li[i].style.animation = 'rightCome .5s ease forwards'; li[location_i].style.animation = 'rightOut .5s ease forwards'; location_i = i; num = i; } } else { if (location_i !== i) { li[i].style.animation = 'leftCome .5s ease forwards'; li[location_i].style.animation = 'leftOut .5s ease forwards'; location_i = i; num = i; } } for (let i = 0 ; i<circle.length ;i++){ circle[i].className = ''; } circle[location_i].className = 'change'; } // 右箭頭 let flag = true; let num = 0; function arrow_right() { flag = false ; num === 2 ? num = 0 : num = location_i + 1; move(num); } // 左箭頭 function arrow_left() { num === 0 ? num = 2 : num = location_i - 1; move(num,'right'); }</script>

精彩專題分享:jQuery圖片輪播 JavaScript圖片輪播 Bootstrap圖片輪播

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 国产日韩欧美精品一区 | 亚洲天堂男人 | 欧美日韩精品一区二区另类 | 亚洲图片偷拍自拍 | 国产成人久久久精品一区二区三区 | 国产欧美日韩精品一区二区三区 | 精品一区二区三区四区在线 | 亚洲人在线播放 | 成年人黄视频在线观看 | 萌白酱在线喷水福利视频 | 九一色视频| 成人五级毛片免费播放 | 真实国产精品视频国产网 | 亚洲 欧美 国产 日韩 制服 bt | 国产精品亚洲二线在线播放 | 国产精品揄拍一区二区久久 | 二区国产| 欧美一级特黄特黄做受 | 亚洲福利影院 | 黄色a网站| 一级做a毛片在线看 | aaa级精品久久久国产片 | 午夜国产高清精品一区免费 | 国内精品久久久久久久亚洲 | 欧美一级特黄aa大片在线观看免费 | 男人的天堂高清在线观看 | 国产中文字幕视频 | 国产成人亚洲综合无 | 亚洲成人18| 国产一区二区三区四区五区tv | 久久综合丁香 | 一级毛片免费播放 | 亚洲第一男人天堂 | 日本欧美一区二区三区高清 | 国产一区亚洲二区三区毛片 | 黄色a网| 亚洲综合99| 九色自拍视频 | 欧美另类精品 | 精品免费久久久久久久 | 欧美激情久久久久久久大片 |