javascript - jQuery .hover() 动画不平滑 - 悬停效果上有小凹凸/急动

标签 javascript jquery jquery-animate

我有这个简单的 jQuery 悬停效果,它可以工作,但并不完美 - 当您输入列表项(悬停)时,动画会在底部产生一个小急动/碰撞,这是为什么?然而,当离开元素时,动画很流畅(使用的浏览器 - Chrome)

HTML:

<div id="div1">
<ul>
  <li><a>JP Links</a></li>
  <li><a>JP Middel</a></li>
  <li><a>JP Regs</a></li>
</ul>
</div>

jQuery:

$('#div1 ul li').hover(
    function(){
        $(this).find('a').animate({'top': '0'}, 'slow');
    }, 
    function(){
        $(this).find('a').animate({'top': '75%'}, 'slow');
    }                 
);

参见FIDDLE

最佳答案

这是因为您只写了 top: 0。尝试这样写 top: 0% :

$(this).find('a').animate({'top': '0%'}, 'slow');

我不知道为什么,但它有效。

关于javascript - jQuery .hover() 动画不平滑 - 悬停效果上有小凹凸/急动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16287168/

相关文章:

javascript - PhantomJS - 单击元素

javascript - 使用 Node.js 回调的次数较少

javascript - js.dart scoped() undefined

javascript - 从属性等于值的数组中获取项目

点击时的 jQuery 反向动画

Jquery 淡入淡出渐变背景

javascript - 如何检查元素是否有效 JSX

jquery - 在延迟回调中时不会抛出/显示错误

javascript - 防止链接打开并使用 flickr 徽章激活 fancybox 幻灯片

jQuery 代码以意想不到的方式进行