我想测量鼠标按下事件和应用CSS active属性之间的时间,而不使用任何jQuery函数(纯Javascript)。我发现有onactive事件,但Opera (我想在其上进行此测量的浏览器)不支持它。实际上,此onactive事件仅由IE支持(不确定是哪个版本)。
htmlElement.addEventListener('mousedown', function(){var timestamp = new Date().getTime() / 1000; console.warn('mouse down ', timestamp)})
htmlElement.addEventListener('DOMAttrModified', function(){var timestamp = new Date().getTime() / 1000; console.info('highlighted ', timestamp)})
当按钮变为活动状态时,此“DOMAttrModified”事件不会报告。
发布于 2012-08-06 13:12:23
:active
是一个CSS伪类,而不是DOM属性或属性。由于图形用户界面和代码执行的单线程特性,测量鼠标按下和设置:active
伪类之间的时间是不可能的,也是不可行的。基本上,当鼠标事件触发时,CSS和图形用户界面更新已经排队,并且在应用:active
时不会触发任何事件。
尽管如此,我想不出任何合理的理由来担心这个过程需要多长时间,你可能更好地忘记它,继续前进。
https://stackoverflow.com/questions/11828894
复制