translateX = event.offsetX setter on mousemove event return



快速而简单的问题,关于某种洗涤器的事情。请参阅下面的小提琴。

当绑定到 mousemove 事件(使用 jQuery)并在向正方向移动时设置 transformX 属性时,大约有 1/2 的变化返回 1。

$floater.css('transform', 'translateX('+event.offsetX+'px)');

与左偏移的设置相同 - 没有问题!

浏览器不一致:

  • 火狐浏览器什么都不做
  • IE与Chrome相同
  • 抬头,IE决定在打开我的小提琴时崩溃

小提琴:http://jsfiddle.net/n3Z3Y/3/

发生这种情况是因为当鼠标光标位于"floater"div 上时,您将鼠标悬停在容器父级上。一个快速的解决方法可能是在鼠标悬停在浮动div 上时返回 false。小提琴在这里更新。

$floater.on('mousemove', function(event) {
    event.stopPropagation();
    event.preventDefault();
    // cross browser propagation stopping...
    return false;
});

最新更新