Jquery延迟背景动画不工作

时间:2013-09-09 03:20:51

标签: jquery

我不明白为什么这不起作用:

$('#myDiv').css('background', 'url("Img/image.gif")').delay(500).css('background', 'none');

我希望#myDiv有背景,并在500ms后删除。

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:2)

css不是动画,因此延迟不会影响它。

改为使用setTimeout

var $div = $('#myDiv').css('background', 'url("Img/image.gif")');

setTimeout(function(){
    $div.css('background', 'none');
}, 500);

答案 1 :(得分:0)

只是一个错字。我想你错过了#部分:

$('#myDiv')

它应该是和id / class选择器;否则jQuery会查找名为myDiv的标签。

顺便说一下,我认为James Montagne解决了上面的真正问题。

答案 2 :(得分:0)

这是因为delay()适用于动画,而且我们无法在图像等位图数据之间设置动画,请尝试使用fadeIn()fadeOut()来创建淡入淡出的背景效果。