joe*_*_fe 2 javascript jquery google-chrome mouseevent dom-events
在这个小提琴演示中,按住并移动鼠标将根据鼠标的位置绘制点。draw 方法是侦听mousemove回调,但它绘制了离散点,表明mousemove事件没有连续触发。
更重要的是,我收集event.timeStamp并登录控制台。我发现相邻事件之间的偏移量接近 16.7ms。那么mousemove事件是否每帧触发一次?
的mousemove事件的发生频率是特定于实现的,而不是由任何规范定义。
当指针设备在元素上移动时,用户代理必须调度此事件。移动指针设备时的事件频率是特定于实现、设备和平台的,但是应该为持续的指针设备移动触发多个连续的 mousemove 事件,而不是为每个鼠标移动实例触发单个事件。鼓励实现来确定最佳频率速率以平衡响应性和性能。
某些平台上的某些浏览器完全有可能将其限制为每帧一次。但是,不能保证任何可能执行此操作的浏览器会继续执行此操作。
如果要绘制一条连续线,则需要在每两个点之间创建插值数据。