为什么这个jquery事件没有被触发?

时间:2013-03-15 04:02:32

标签: jquery

为什么jquery动画不起作用,但更简单的内联样式是在onmouseout上触发的?

http://jsfiddle.net/FZLnE/1/

function bigImg(x){

  jQuery(x).stop().animate({
      color: "#fff"
  }, 200);

}

function normalImg(x)
{
    x.style.color="green";
}

3 个答案:

答案 0 :(得分:0)

  

所有动画属性都应设置为单个数字

     

来自jQuery Animate Docs

您根本无法为颜色设置动画,因为它们不是数字。有一个名为jQuery Color的插件看起来可能会有所帮助,它链接到jQuery animate API页面

答案 1 :(得分:0)

其实托马斯赖是对的。它适用于UI检查。

在任何情况下.hover()都有两个函数 - 一个用于鼠标悬停,一个用于mouseout。您也可以使用.on('mouseover').on('mouseout')

http://jsfiddle.net/popnoodles/FZLnE/8/

<div class="one">This is a link</div>

JQ

$('.one').hover(function(){
  jQuery(this).stop().animate({
      color: "#fff",
      marginLeft:50
  }, 200);  
}, function(){
    this.style.color="green";
})

答案 2 :(得分:0)

您无法使用简单的jQuery为color设置动画。您需要使用jquery UI来执行此操作。

请查看此link

并查看jQuery团队对new plugin的开发,​​以支持色彩动画和许多其他好东西。