在这段代码中,我试图让用户捕获黑色方 block 并围绕内圆旋转它。
如果您尝试这样做,您会注意到光标在 firefox 中大约有 50% 的时间卡住,从而阻止 $(document).off('mousemove');
从执行,除非您再次单击以调用 mouseup
事件处理程序。
这在 IE、chrome 和 safari 中似乎工作正常(如果您快速单击黑色方 block 会崩溃)但是它在 firefox 中给我带来了问题。
无论如何我可以改进这段代码,使光标不会卡在 firefox 中吗?
注意 如果您无法让光标卡住,请尝试单击并按住(不要移动)黑框的底 Angular ,然后从左向右快速移动光标。
最佳答案
在 mousedown 部分添加 event.preventDefault。
$('#container').on('mousedown', '#marker', function(event){
event.preventDefault();
$(document).on('mousemove', function(event){
rotateAroundCircle($('#innerCircle').parent(), event.pageX,event.pageY, $('#marker'));
});
});
我相应地修改了您的 fiddle 并进行了 Angular 落测试。似乎工作正常。 New Fiddle
关于javascript - 如何防止光标卡在css transform :rotate in firefox?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10158769/