在设定的间隔后更改图像属性

时间:2013-11-07 01:52:00

标签: javascript jquery

我试图在每3秒后更改am图像中的某个参数,以便在每三秒后它将循环通过0,1,2,3,4,5,6,7,8,9。我在页面加载时显示全部0,然后通过设置超时更改属性。这个数字从0跳到9然后根本没有移动

这是我的js

var linkCons = "http://soumghosh.com/otherProjects/Numbers/";

setInterval(function() {
    for(var i = 0; i< 10; i++){
        $('.nine').attr('src',linkCons + "nw" + i + ".png")
    }
}, 3000);

这是我的小提琴 http://jsfiddle.net/sghoush1/AZe9b/2/

3 个答案:

答案 0 :(得分:1)

它实际上是循环遍历它们,只是太快让你看不到。你正在做的是每三秒钟它尽可能快地遍历所有10个选项。然后它在9点停留三秒钟并重复。你应该有一个计数器变量,并执行以下操作:

    var linkCons = "http://soumghosh.com/otherProjects/Numbers/";
    var count = 0;
    setInterval(function() {
        $('.nine').attr('src',linkCons+"nw"+count+".png");
        count++;
        if (count > 9)
        {
            count = 0;
        }
    }, 3000);

答案 1 :(得分:1)

这是我的解决方案。

 var linkCons = "http://soumghosh.com/otherProjects/Numbers/";
 var i = 0;
 setInterval(function() {
    $('.nine').attr('src', linkCons + "nw" + ((i === 10) ? i = 0 : (i++)) +".png");    
 }, 3000);

答案 2 :(得分:0)

Fiddle DEMO

var linkCons = "http://soumghosh.com/otherProjects/Numbers/";
var i = 0;
setInterval(function () {
    $('.nine').attr('src', linkCons + "nw" + i+++".png");
    if(i === 10)  i = 0 ;
}, 3000);