Я пытаюсь понять, как настраиваемый тип события связан с конкретным действием/триггером пользователя. Кажется, что вся документация отправляет событие без какого-либо взаимодействия с пользователем.Как правильно выполнить пользовательские события JavaScript
В следующем примере я хочу, чтобы событие отправлялось после того, как пользователь навешивает элемент на 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
, но имеет третий параметр для триггера, а также создание метода, называемого addCustomEventListener
, который работает так же, как addEventListener
но когда инициализируется она передает целевой элемент в триггер настраиваемого события, который затем отправляет событие, когда ему дается указание.
спасибо, но я надеялся не запускать каждое событие вручную. – TarranJones