2

我想在不使用任何 jQuery 函数(纯 Javascript)的情况下测量 mousedown 事件和应用 CSS 活动属性之间的时间。我发现有 onactive 事件,但 Opera(我要在其上进行此测量的浏览器)不支持它。实际上只有 IE 支持这个 onactive 事件(不确定是哪个版本)。

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”事件。

4

1 回答 1

5

:active是 CSS 伪类,而不是 DOM 属性或属性。:active由于 GUI 和代码执行的单线程性质,测量鼠标按下和设置伪类之间的时间是不可能或不可行的。基本上,当鼠标事件触发时,CSS 和 GUI 更新已经排队,并且在:active应用时不会触发任何事件。

不过,我想不出任何正当理由担心这个过程需要多长时间,你最好忘记它并继续前进。

于 2012-08-06T13:12:22.837 回答