【问题标题】:I'am using this code to slide through images in javascript我正在使用此代码在 javascript 中滑动图像
【发布时间】:2014-08-27 14:49:39
【问题描述】:
function call()
{
    var i=0,
        img=document.getElementById("img1");
    for(i=1;i<=3;i=i++)
    {
        setInterval(function(){
            img.src="Images/"+i+".jpg";
        },3000);

    }

}

网页上没有显示任何内容。图像名称是正确的。执行代码时计算机挂起。

【问题讨论】:

标签: javascript image transition slide


【解决方案1】:
i=i++

这不是增加i 的正确用法。

这是做什么的:

  1. 变量i 递增++
  2. 变量i 被分配旧值i,因为i++ 返回旧值i

所以基本上,你陷入了无限循环。只需将i=i++ 替换为i++i=i+1i+=1 就可以了。

再次查看您的代码,我必须告诉您,这仍然不会产生预期的效果,因为您将所有间隔设置为同时触发。你想要做的看起来像这样:

function next() {
    setInterval(function(){
        //display next image
    },3000);
    next();
}
next();

根据您的 html 代码的构建方式,最简单的实现方法是:

var count = 3; current = 0, img=document.getElementById("img1");
function next() {
    setInterval(function(){
        current++;
        if(current >= count) {
            current = 0;
        }
        img.src="Images/" + current + ".jpg";
    },3000);
    next();
}
next();

【讨论】:

  • 抱歉打错了
  • 我能知道更多关于显示下一张图片吗
【解决方案2】:

关于你的代码角度..试试下面的。

function call(){
            var i=0;
            setInterval(function(){
                    document.getElementById("pics").innerHTML="<img src='img"+i+".jpg' width=300 height=300 alt='image' /> ";
                i++;
                if(i>=3){
                    i= i%3;
                }
            },3000);
        }

"pics" 是在 html 页面中声明的 div 标签。

【讨论】:

    猜你喜欢
    • 2012-05-22
    • 1970-01-01
    • 2021-04-18
    • 2019-08-15
    • 1970-01-01
    • 2014-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多