2
 jQuery(function() {
            jQuery('#rightbar').bind('mouseenter',function(){
                  jQuery(this).stop().animate({right: 0}, {duration:600});
            });
            jQuery('#rightbar').bind('mouseleave',function(){
                  jQuery(this).stop().animate({right: '-150px'}, {duration:600});
            });
        });

虽然我在我的网站上使用此功能,但它在除 Firefox(最新)之外的所有其他浏览器上都能正常工作。

当我将鼠标悬停在 div #rightbar 上时,它会向左移动,而不是像我的脚本一样向右移动。我检查了 Chrome 和 frefox:

在 Chrome 上,悬停时,右属性从:-150 -> 0

但是在Firefox上,当悬停时,右属性更改-150 -> -170 ...等。

我不知道为什么,也许是Firefox的错误(?)。

期待您的帮助。

谢谢!

P/s:你可以在这里查看:http: //goo.gl/SChFo

4

1 回答 1

4

我做了一些研究,它看起来像是 FireFox 中的一个错误:

https://bugzilla.mozilla.org/show_bug.cgi?id=844178

如果你使用min-width而不是width你的,你可以修复它.rightbar(至少对于 Firefox,但老实说我需要说我现在没有时间检查这是否可以跨浏览器工作)

这里有一个类似的问题有同样的问题:
css jquery position fixed element on the right。Firefox中的动画BUG

这个问题更清楚地表明这是FF的问题,因为right没有触及bottom值,只是改变了值,但效果与您的示例相同。

于 2013-07-15T05:43:55.950 回答