我尝试用javacript创建一个简单的自动幻灯片。
var Index = 0;
automatic();
function automatic() {
var slide = document.getElementsByClassName("slide");
for (var i = 0; i < slide.length; i++) {
slide[i].style.display = "none";
}
if (Index > slide.length) {
Index = 1;
}
Index++;
slide[Index - 1].style.display = "block";
setTimeout(automatic, 2000);
}
&#13;
我认为问题仍然是slide[Index - 1].style.display = "block";
,因为我在此之前设置了提示,当我测试网页提醒有效时,以及当我放置之后提醒,他没有工作。
我在这里缺少什么?
答案 0 :(得分:0)
首先:将Index的初始值设置为1以避免使用元素-1
第二:更改这两行的顺序:
Index++;
if (Index > slide.length+1) { Index = 1; }
第三:条件应该达到slide.length + 1,正如我在上面所纠正的那样。
答案 1 :(得分:-1)
试试这个:
var Index = 0;
automatic();
function automatic() {
var slide = document.getElementsByClassName("slide");
for (var i = 0; i < slide.length; i++) {
slide[i].style.display = "none";
}
if (Index >= slide.length) {
Index = 0;
}
Index++;
slide[Index - 1].style.display = "block";
setTimeout(automatic, 2000);
}
&#13;