我希望计算从命令行(3)开始到结束的时间差,但是看起来我错了,因为第7行显示为零。我期望它显示6500(1500 + 3500 + 1500)。请帮忙。
sd = new Date();
sdm = sd.getMilliseconds();
$(imgs).eq(i).fadeIn(1500).delay(3500).fadeOut(1500);
ed = new Date();
edm = ed.getMilliseconds();
df = edm - sdm;
document.getElementById('df').innerHTML = df;
我提出这个问题的原因是,我正在编写一个非常简单的幻灯片,并且它没有正确地按顺序显示图像,而是跳跃式地显示。
这是我的HTML和JS代码:
$(document).ready(
function() {
var i=0;
var imgs = $('#images ul').children();
var j = imgs.length;
setInterval(function(){ runIt(); }, 6500);
function runIt() {
i = i + 1;
if (i == j) { i=0;}
$(imgs).eq(i).fadeIn(1500).delay(3500).fadeOut(1500);
}
});
<div id="slider">
<ul>
<li><img src="images/slider/s1.jpg" /></li>
<li><img src="images/slider/s2.jpg" /></li>
<li><img src="images/slider/s3.jpg" /></li>
<li><img src="images/slider/s4.jpg" /></li>
</ul>
</div>
谢谢你。
runIt()
函数中,将i = i + 1;
移动到该函数的底部。 - Anthony