【发布时间】:2014-12-14 01:37:10
【问题描述】:
当我突然注意到一些奇怪的事情时,我正在使用 jQuery 为径向渐变设置动画(查看 this JSFiddle)。当鼠标指针移动到元素的左侧时,位置动画是平滑的,但是当鼠标指针移动到右边时,它根本不平滑(如果你移动鼠标足够慢,请注意位置的跳跃)。
这感觉像是某种舍入错误,但我不确定它为什么会发生。有任何想法吗?我暂时只在谷歌浏览器上测试过,只发生在水平方向。
CSS
html { background: #fff; }
html, body {
width: 100%;
height: 100%;
}
body { background: #000; }
JavaScript
$('body').on('mousemove', function(event) {
var x = event.pageX;
var y = event.pageY;
$(this).css('background', '-webkit-radial-gradient(' + x + 'px ' + y + 'px, transparent 10%, #000 5%)');
});
你能复制这个还是只发生在我身上?
编辑:在 Safari 中运行良好。
【问题讨论】:
-
我无法复制它。你用的是什么版本?当您将鼠标向右移动很远时,您的鼠标是否会越过滚动条(因为那时
mousemove事件不会触发)? -
我想我正在使用最新的非 beta 版本(无法检查 atm)并且我没有悬停滚动条。元素越大效果越明显,鼠标越往右移动。
-
在 Windows 8 上的 Chrome 中发生在我身上
-
如果有帮助,请使用版本 38.0.2125.104。
标签: javascript jquery html css google-chrome