嗨我已经使用jQuery动画来设置菜单项上的填充动画。代码非常简单如下:
$('.menu li a').hover(function(){
$(this).animate({
paddingLeft:'18px',
paddingRight:'18px'
}, 350);
}, function(){
$(this).animate({
paddingLeft:'5px',
paddingRight:'5px'
}, 350);
});
但由于某些原因,在IE8和7中,它确实非常滞后。任何人都有任何想法。很多javascript在这方面都很滞后,但我不知道为什么。该网站是 http://www.rnmtest.co.uk/rnm
答案 0 :(得分:1)
似乎动画也与FF7一样滞后(当你进出很多时)。可能是你的某些脚本正在进行无限循环或类似的事情。检查您的代码。除了jQuery和动画脚本之外,还要测试没有任何js库。
答案 1 :(得分:1)
你问:
为什么ie8及以下的动画如此滞后?
你的问题的直接答案是:因为IE7 / 8的Javascript引擎是垃圾。
答案 2 :(得分:0)
悬停很贵。每当鼠标位于元素上方时,Hover就会触发一个事件。 Mouseenter(以及之后的mouseout)对你正在做的事情来说更便宜,并且只发射一次事件。
对于慢速JS引擎尤其如此。
我认为jenter可以在较新的版本中提供mouseenter事件。