Javascript 为什么数组中的第一个图像不';你第一次就不打圈了吗?
我正在使用javascript制作一个简单的动画。当然,我可以使用CSS关键帧,但这对我所需要的不起作用,所以请不要使用CSS解决方案。我加入了一个状态div,只是为了让你明白我的意思,而不必看图片。在下面的中间 无论如何,这里是HTMLJavascript 为什么数组中的第一个图像不';你第一次就不打圈了吗?,javascript,Javascript,我正在使用javascript制作一个简单的动画。当然,我可以使用CSS关键帧,但这对我所需要的不起作用,所以请不要使用CSS解决方案。我加入了一个状态div,只是为了让你明白我的意思,而不必看图片。在下面的中间 无论如何,这里是HTML <div id="zero-walking"><img src="#" id="zeroImage"></div> <div id="statusDiv"></div> 此块: i
<div id="zero-walking"><img src="#" id="zeroImage"></div>
<div id="statusDiv"></div>
此块:
index += 1;
if (index == zeroArray.length) {
index = 0;
}
应该位于函数的最末尾
您的问题是index+=1
在您执行statusDiv.innerHTML=zeroArray[index]之前发生代码>所以你第一次到达那里时是1(不是0)…此块:
index += 1;
if (index == zeroArray.length) {
index = 0;
}
应该位于函数的最末尾
您的问题是index+=1
在您执行statusDiv.innerHTML=zeroArray[index]之前发生代码>所以你第一次到达那里时是1(不是0)…此块:
index += 1;
if (index == zeroArray.length) {
index = 0;
}
应该位于函数的最末尾
您的问题是index+=1
在您执行statusDiv.innerHTML=zeroArray[index]之前发生代码>所以你第一次到达那里时是1(不是0)…此块:
index += 1;
if (index == zeroArray.length) {
index = 0;
}
应该位于函数的最末尾
您的问题是index+=1
在您执行statusDiv.innerHTML=zeroArray[index]之前发生代码>所以第一次到达时是1(不是0)…尝试将索引赋值运算符移动到方法的末尾。实际上,您首先递增索引,然后进行工作,这意味着您跳过了0帧…请尝试将索引赋值运算符移动到方法的末尾。实际上,您首先递增索引,然后进行工作,这意味着您跳过了0帧…请尝试将索引赋值运算符移动到方法的末尾。实际上,您首先递增索引,然后进行工作,这意味着您跳过了0帧…请尝试将索引赋值运算符移动到方法的末尾。实际上,您首先递增索引,然后进行工作,这意味着您跳过了0帧…有时我会问自己为什么要帮忙。如果您只想在这些图像上循环,则如下所示:
function loopImages(elem, imgs, interval, loop){
var i = 0, loopy = setInterval(function(){
elem.src = imgs[i++];
if(i === imgs.length){
loop ? i = 0 : clearInterval(loopy);
}
}, interval);
}
loopImages(document.getElementById('zeroImage'), zeroArray, 700, true); // loops forever
有时我会问自己为什么要帮忙。如果您只想在这些图像上循环,则如下所示:
function loopImages(elem, imgs, interval, loop){
var i = 0, loopy = setInterval(function(){
elem.src = imgs[i++];
if(i === imgs.length){
loop ? i = 0 : clearInterval(loopy);
}
}, interval);
}
loopImages(document.getElementById('zeroImage'), zeroArray, 700, true); // loops forever
有时我会问自己为什么要帮忙。如果您只想在这些图像上循环,则如下所示:
function loopImages(elem, imgs, interval, loop){
var i = 0, loopy = setInterval(function(){
elem.src = imgs[i++];
if(i === imgs.length){
loop ? i = 0 : clearInterval(loopy);
}
}, interval);
}
loopImages(document.getElementById('zeroImage'), zeroArray, 700, true); // loops forever
有时我会问自己为什么要帮忙。如果您只想在这些图像上循环,则如下所示:
function loopImages(elem, imgs, interval, loop){
var i = 0, loopy = setInterval(function(){
elem.src = imgs[i++];
if(i === imgs.length){
loop ? i = 0 : clearInterval(loopy);
}
}, interval);
}
loopImages(document.getElementById('zeroImage'), zeroArray, 700, true); // loops forever
在(var i=0;i
的中,您想做什么index
是一个数字,而不是一个数组。我的坏消息是,当我测试某个东西时,我在他们的for语句中有for语句,忘记删除这篇帖子。在为(var I=0;I
设置statusDiv
的innerHtml
之后,你应该做index+=1
,你想干什么index
是一个数字,而不是一个数组。我的坏消息是,当我测试某个东西时,我在他们的for语句中有for语句,忘记删除这篇帖子。在为(var I=0;I
设置statusDiv
的innerHtml
之后,你应该做index+=1
,你想干什么index
是一个数字,而不是一个数组。我的坏消息是,当我测试某个东西时,我在他们的for语句中有for语句,忘记删除这篇帖子。在为(var I=0;I
设置statusDiv
的innerHtml
之后,你应该做index+=1
,你想干什么index
是一个数字,而不是一个数组。我的坏消息是,当我测试某个东西时,我在他们的for语句中有一个for语句,忘记删除这篇帖子你应该在设置statusDiv
的innerHtml
之后执行,我正在测试其他内容,发布此内容时忘记删除。请使用index++
而不是+=1
。更简单。谢谢,效果很好,很抱歉刚才的for/loop,我正在测试其他东西,发布此内容时忘记删除。请使用index++
而不是+=1
。更简单。谢谢,效果很好,很抱歉刚才的for/loop,我正在测试其他东西,发布此内容时忘记删除。请使用index++
而不是+=1
。更简单。谢谢,效果很好,很抱歉刚才的for/loop,我正在测试其他东西,发布此内容时忘记删除。请使用index++
而不是+=1
。这更容易。