javascript setInterval没有看到.css jquery

时间:2013-01-31 11:06:53

标签: javascript jquery

我有js代码:

var config = $('.fullscreen_src');
var i=0;
function display_images(){
    i++;
    var image = config[i % config.length];
    image.css('display', 'block');
}
setInterval(display_images, 3000);

由于delay,它每3秒抛出一次错误。错误是TypeError: image.css is not a function,我不知道是什么问题。当我将function display_image改为此时:

function display_images(){
    i++;
    alert('tralal ' + i);
}

它工作正常,为什么?

4 个答案:

答案 0 :(得分:1)

您需要创建一个包含css函数

的Jquery对象
function display_images(){
    i++;
    var image = $(config[i % config.length]);
    image.css('display', 'block');
}

答案 1 :(得分:1)

css是Jquery对象的功能。将对象包装在$(image)中,尝试这样

function display_images(){
    i++;
    var image = $(config[i % config.length]); // now image is Jquery object, so you can access CSS methods 
    image.css('display', 'block');
}

或 你可以用jquery

包装图像对象
 $(image).css('display', 'block');

答案 2 :(得分:1)

function display_images(){
    i++;
    var image = config[i % config.length];
    $(image).css('display', 'block');  // Use jQuery object..
}

答案 3 :(得分:0)

尝试像这样修改你的代码。

var image = config[i % config.length];
image = $(image);
image.css('display', 'block');