課程
/前端開發(fā)
/JavaScript
/焦點(diǎn)圖輪播特效
我用這份js代碼做了兩個(gè)不同尺寸的輪播圖,為什么只有一個(gè)有效果?另一個(gè)就沒(méi)有效果?
2017-06-13
源自:焦點(diǎn)圖輪播特效 1-1
正在回答
window.onload = function () { ? ?
var container = document.getElementById('container'); ? ?
var list = document.getElementById('list'); ? ?
var buttons = document.getElementById('buttons').getElementsByTagName('span'); ? ?
var prev = document.getElementById('prev'); ? ?
var next = document.getElementById('next'); ? ?
var index = 1; ? ?
var len = 5; ? ?
var animated = false; ? ?
var interval = 3000; ? ?
var timer; ? ?
function animate (offset) { ? ?
if (offset == 0) { ? ?
return; ? ?
} ? ?
animated = true; ? ?
var time = 300; ? ?
var inteval = 10; ? ?
var speed = offset/(time/inteval); ? ?
var left = parseInt(list.style.left) + offset; ? ?
var go = function (){ ? ?
if ( (speed > 0 && parseInt(list.style.left) < left) || (speed < 0 && parseInt(list.style.left) > left)) { ? ?
list.style.left = parseInt(list.style.left) + speed + 'px'; ? ?
setTimeout(go, inteval); ? ?
else { ? ?
list.style.left = left + 'px'; ? ?
if(left>-200){ ? ?
list.style.left = -600 * len + 'px'; ? ?
if(left<(-600 * len)) { ? ?
list.style.left = '-600px'; ? ?
animated = false; ? ?
go(); ? ?
function showButton() { ? ?
for (var i = 0; i < buttons.length ; i++) { ? ?
if( buttons[i].className == 'on'){ ? ?
buttons[i].className = ''; ? ?
break; ? ?
buttons[index - 1].className = 'on'; ? ?
function play() { ? ?
timer = setTimeout(function () { ? ?
next.onclick(); ? ?
play(); ? ?
}, interval); ? ?
function stop() { ? ?
clearTimeout(timer); ? ?
next.onclick = function () { ? ?
if (animated) { ? ?
if (index == 5) { ? ?
index = 1; ? ?
index += 1; ? ?
animate(-600); ? ?
showButton(); ? ?
prev.onclick = function () { ? ?
if (index == 1) { ? ?
index = 5; ? ?
index -= 1; ? ?
animate(600); ? ?
for (var i = 0; i < buttons.length; i++) { ? ?
buttons[i].onclick = function () { ? ?
if(this.className == 'on') { ? ?
var myIndex = parseInt(this.getAttribute('index')); ? ?
var offset = -600 * (myIndex - index); ? ?
animate(offset); ? ?
index = myIndex; ? ?
container.onmouseover = stop; ? ?
container.onmouseout = play; ? ?
}? ? ?
代碼沒(méi)給出,怎么會(huì)知道呀
舉報(bào)
通過(guò)本教程學(xué)習(xí)您將能掌握非常實(shí)用的焦點(diǎn)圖輪播特效的制作過(guò)程
1 回答關(guān)于源代碼的疑問(wèn)
1 回答關(guān)于視頻中的bug還有跟下載中的源代碼的比較
1 回答源代碼在哪
1 回答代碼問(wèn)題
3 回答關(guān)于箭頭的問(wèn)題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2017-06-13
window.onload = function () { ? ?
var container = document.getElementById('container'); ? ?
var list = document.getElementById('list'); ? ?
var buttons = document.getElementById('buttons').getElementsByTagName('span'); ? ?
var prev = document.getElementById('prev'); ? ?
var next = document.getElementById('next'); ? ?
var index = 1; ? ?
var len = 5; ? ?
var animated = false; ? ?
var interval = 3000; ? ?
var timer; ? ?
function animate (offset) { ? ?
if (offset == 0) { ? ?
return; ? ?
} ? ?
animated = true; ? ?
var time = 300; ? ?
var inteval = 10; ? ?
var speed = offset/(time/inteval); ? ?
var left = parseInt(list.style.left) + offset; ? ?
var go = function (){ ? ?
if ( (speed > 0 && parseInt(list.style.left) < left) || (speed < 0 && parseInt(list.style.left) > left)) { ? ?
list.style.left = parseInt(list.style.left) + speed + 'px'; ? ?
setTimeout(go, inteval); ? ?
} ? ?
else { ? ?
list.style.left = left + 'px'; ? ?
if(left>-200){ ? ?
list.style.left = -600 * len + 'px'; ? ?
} ? ?
if(left<(-600 * len)) { ? ?
list.style.left = '-600px'; ? ?
} ? ?
animated = false; ? ?
} ? ?
} ? ?
go(); ? ?
} ? ?
function showButton() { ? ?
for (var i = 0; i < buttons.length ; i++) { ? ?
if( buttons[i].className == 'on'){ ? ?
buttons[i].className = ''; ? ?
break; ? ?
} ? ?
} ? ?
buttons[index - 1].className = 'on'; ? ?
} ? ?
function play() { ? ?
timer = setTimeout(function () { ? ?
next.onclick(); ? ?
play(); ? ?
}, interval); ? ?
} ? ?
function stop() { ? ?
clearTimeout(timer); ? ?
} ? ?
next.onclick = function () { ? ?
if (animated) { ? ?
return; ? ?
} ? ?
if (index == 5) { ? ?
index = 1; ? ?
} ? ?
else { ? ?
index += 1; ? ?
} ? ?
animate(-600); ? ?
showButton(); ? ?
} ? ?
prev.onclick = function () { ? ?
if (animated) { ? ?
return; ? ?
} ? ?
if (index == 1) { ? ?
index = 5; ? ?
} ? ?
else { ? ?
index -= 1; ? ?
} ? ?
animate(600); ? ?
showButton(); ? ?
} ? ?
for (var i = 0; i < buttons.length; i++) { ? ?
buttons[i].onclick = function () { ? ?
if (animated) { ? ?
return; ? ?
} ? ?
if(this.className == 'on') { ? ?
return; ? ?
} ? ?
var myIndex = parseInt(this.getAttribute('index')); ? ?
var offset = -600 * (myIndex - index); ? ?
animate(offset); ? ?
index = myIndex; ? ?
showButton(); ? ?
} ? ?
} ? ?
container.onmouseover = stop; ? ?
container.onmouseout = play; ? ?
play(); ? ?
}? ? ?
2017-06-13
代碼沒(méi)給出,怎么會(huì)知道呀