1 回答

TA貢獻(xiàn)1809條經(jīng)驗(yàn) 獲得超8個(gè)贊
您的next
按鈕也無(wú)法正常工作。這兩個(gè)函數(shù)的問(wèn)題在于,您在更改后src
更改了索引,因此新的索引src
將反映最后一次imageIndex
單擊按鈕之后的內(nèi)容,而不是剛剛發(fā)生的單擊。(并且由于硬編碼為從 1 開始,因此第一次單擊始終會(huì)執(zhí)行“下一步”按鈕應(yīng)該執(zhí)行的操作)imageIndex
初始化為0,并在設(shè)置之前imageIndex
更改它。src
另外,不要使用內(nèi)聯(lián)處理程序,它們有一個(gè)瘋狂的作用域鏈,需要全局污染,并且有引用轉(zhuǎn)義問(wèn)題。改用addEventListener
:
let myImage = document.getElementById('mainImage');
let images = ["./img/th01.jpg", "./img/th02.jpg", "./img/th03.jpg", "./img/th04.jpg", "./img/th05.jpg"];
let imageIndex = 0;
const [prev, next] = document.querySelectorAll('button');
next.addEventListener('click', () => {
? imageIndex++;
? if (imageIndex === images.length) {
? ? imageIndex = 0;
? }
? myImage.src = images[imageIndex];
});
prev.addEventListener('click', () => {
? imageIndex--;
? if (imageIndex === -1) {
? ? imageIndex = images.length - 1;
? }
? myImage.src = images[imageIndex];
});
<div id="wrapper">
? <img src="./img/th01.jpg" id="mainImage">
? <br>
? <br>
? <button>Previous</button>
? <button>Next</button>
</div>
- 1 回答
- 0 關(guān)注
- 141 瀏覽
添加回答
舉報(bào)