這篇文章主要介紹原生JS實(shí)現(xiàn)輪播圖效果的方法,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!
成都創(chuàng)新互聯(lián)是一家專注于做網(wǎng)站、網(wǎng)站設(shè)計與策劃設(shè)計,南海網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:南海等地區(qū)。南海做網(wǎng)站價格咨詢:18982081108著是通過獲取圖片偏移量實(shí)現(xiàn)的,也實(shí)現(xiàn)了無縫切換,還有一點(diǎn)問題就是沒有加上圖片切換的時候的延遲了。
html:
js:
window.onload = function(){ //獲取元素 var container = document.getElementById('container'); var list = this.document.getElementById('list'); var buttons = document.getElementById('buttons').getElementsByTagName('span'); var prev = document.getElementById('prev'); var next = document.getElementById('next'); var index = 1;//默認(rèn)第一個小圓點(diǎn)亮 //小圓點(diǎn)的點(diǎn)亮 function showButton() { //遍歷小圓點(diǎn)的個數(shù),當(dāng)觸發(fā)onclick事件后,className為‘on'的變?yōu)椤?#39;。 for(var i = 0;i < buttons.length; i++){ if(buttons[i].className == 'on'){ buttons[i].className = ''; break; } } buttons[index - 1].className = 'on'; //原始第一個小圓點(diǎn)點(diǎn)亮,onclick事件觸發(fā)后,index+1 } function animate (offset) { //獲取從第一張圖片開始發(fā)生的偏移量 var newLift = parseInt(list.style.left) + offset; list.style.left = newLift + 'px'; if(newLift > -600){ //如果偏移量的位置大于-600的時候,圖片跳轉(zhuǎn)到第五張圖片 list.style.left = -3000 + 'px'; } if(newLift < -3000){ //如果偏移量的位置大于-3000的時候,圖片跳轉(zhuǎn)到第一張圖片 list.style.left = -600 + 'px'; } } next.onclick = function () { //如果button的index為5的時候,再點(diǎn)擊next按鈕會返回 1; if(index == 5){ index = 1; }else{ index += 1; } showButton(); animate(-600); } prev.onclick = function () { if(index == 1){ index = 5; }else{ index -= 1; } showButton(); animate(600); } }
以上是“原生JS實(shí)現(xiàn)輪播圖效果的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!