jQuery backgroundColor动画

我有一个带有链接和SPAN的DIV。

单击该链接时,它使用AJAX呈现项目列表。 单击某个项目时,SPAN的内容会发生变化。

我想通过将DIV的背景颜色设置为绿色,并使用jQuery将其动画回白色来突出显示此更改。

var originalColor = elementToUpdate.parentNode.style.backgroundColor; elementToUpdate.style.backgroundColor = 'green'; //lastSender.style.color; jQuery(elementToUpdate.id).animate({ backgroundColor: '#ffffff' }, 1000); 

SPAN的背景在第2行变为绿色,但第3行没有做任何事情。 没有错误,或者改变了什么……

有任何想法吗?


编辑:正如Ted Naleid在下面的评论中所述:

另请注意,您必须安装彩色动画插件才能使用( http://plugins.jquery.com/project/color ),如果您没有安装它,jQuery无法为颜色设置动画,只有数字属性(至少从1.3.1开始)。

如果您已经拥有该元素,则不需要.id 。 把它直接交给jQuery:

 jQuery(elementToUpdate).animate({ backgroundColor: '#ffffff' }, 1000); 

您没有收到错误,因为elementToUpdate.id是一个字符串,jQuery(可能)将其解释为选择器。 它恰好是一个不选择任何东西的选择器。

或者,您可以这样说,使其成为有效的选择器:

 jQuery('#' + elementToUpdate.id).animate({ backgroundColor: '#ffffff' }, 1000); 

但我认为第一种forms更可取,因为你已经有了元素本身。