4

jQuery を使えば簡単です。純粋な JavaScript ではそうではありません。少なくともその方法を見つけるのは簡単ではありません。if (event.clientX && event.clientY) { ... }ある種の検出を提供しますが、100% 正確ではありません。

4

2 に答える 2

4

方法はあります、かなり議論の余地があります。これを試して:

HTMLElement.prototype.dispatchEvent = (function(dispev) {
    return function(event) {
        // Do your stuff
        dispev.call(this, event);
    };
})(HTMLElement.prototype.dispatchEvent);

dispatchEventこれにより、プログラムによって生成されたイベントがディスパッチされるときに、すべての呼び出しをキャッチできます。もちろん、これによりディスパッチが少し遅くなりますが、多くのイベントを発生させようとしている場合を除き、問題になることはありません。

IE8 では代わりに置き換える必要がありますがElement.prototype.fireEvent、IE7 以下ではそれについて何もすることができません。

于 2013-04-23T21:13:43.280 に答える
0

Event.isTrustedは、満足できるレベルまで使用できます。

于 2019-10-23T09:44:25.493 に答える