2

カスタム イベント タイプが特定のユーザー アクション/トリガーにどのようにリンクされているかを理解するのに苦労しています。すべてのドキュメントは、ユーザーの操作なしでイベントをディスパッチするようです。

次の例では、ユーザーが要素に 3 秒間ホバリングすると、イベントがディスパッチされるようにします。

var img = document.createElement('img');img.src = 'http://placehold.it/100x100';
document.body.appendChild(img)
var event = new CustomEvent("hoveredforthreeseconds");

img.addEventListener('hoveredforthreeseconds', function(e) { console.log(e.type)}, true);


var thetrigger = function (element, event) {
    var timeout = null;
    element.addEventListener('mouseover',function() {
        timeout = setTimeout(element.dispatchEvent(event), 3000);
    },true);
    element.addEventListener('mouseout', function() {
        clearTimeout(timeout);
    },true);
};

トリガーはありますが、それをイベントに接続する論理的な方法がありません。

というオブジェクトを作成することを考えていましたが、CustomEventTriggerこれは本質的CustomEventにトリガー用の 3 番目のパラメーターを持ち、 と呼ばれるメソッドを作成することもaddCustomEventListener考えてaddEventListenerいました。と指示されたとき。

4

2 に答える 2