我有一个带有链接和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开始).
Adam Bellair.. 9
.id
如果您已经拥有该元素,则不需要.把它直接交给jQuery:
jQuery(elementToUpdate).animate({ backgroundColor: '#ffffff' }, 1000);
你没有得到错误,因为它elementToUpdate.id
是一个字符串,jQuery(可能)解释为一个选择器.它恰好是一个不选择任何东西的选择器.
或者,您可以这样说,使其成为有效的选择器:
jQuery('#' + elementToUpdate.id).animate({ backgroundColor: '#ffffff' }, 1000);
但我认为第一种形式更可取,因为你已经有了元素本身.
.id
如果您已经拥有该元素,则不需要.把它直接交给jQuery:
jQuery(elementToUpdate).animate({ backgroundColor: '#ffffff' }, 1000);
你没有得到错误,因为它elementToUpdate.id
是一个字符串,jQuery(可能)解释为一个选择器.它恰好是一个不选择任何东西的选择器.
或者,您可以这样说,使其成为有效的选择器:
jQuery('#' + elementToUpdate.id).animate({ backgroundColor: '#ffffff' }, 1000);
但我认为第一种形式更可取,因为你已经有了元素本身.