jQuery backgroundColor动画
问题描述:
我有一个链接和SPAN的DIV。jQuery backgroundColor动画
单击链接时,它使用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的背景在第二行更改为绿色,但第三行不执行任何操作。没有错误,或改变什么如此...
任何想法?
编辑:正如特德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);
但我认为第一种形式是可取的,因为你已经拥有的元素本身。
另请注意,您必须安装颜色动画插件才能使其正常工作(http://plugins.jquery.com/project/color),如果您没有安装它,jQuery无法设置动画颜色,只有数字属性(至少从1.3.1开始)。 – 2009-02-05 02:56:07