Немного поздно стороне, но я действительно создавал что-то, что могло бы быть полезно для других здесь.
https://codepen.io/phreaknation/pen/QmJjEa
Это - Класс ES6, который получает все события от элемента, который известен тому элементу. Эта демонстрация позволяет Вам изменять время элемента на странице, а также считывать события с активируемыми по щелчку ссылками на их страницу MDN, а также взаимодействовать с элементом и видеть, как события инициированы с метками времени.
я надеюсь, что это помогает
код Класса
class EventSystem {
constructor(element) {
this._ = {
element: null
}
return this;
}
getAllEventTypes({blacklist = [], whitelist = []} = {}) {
const events = [];
for (let property in this._.element) {
const match = property.match(/^on(.*)/);
if (match) {
if ((whitelist.length > 0 ? whitelist.indexOf(match) !== -1 : true) &&
(blacklist.length > 0 ? blacklist.indexOf(match) === -1 : true)) {
events.push(match[1]);
}
}
}
return events;
}
getElementType() {
return this._.element.tagName.toLowerCase();
}
setElement(element) {
this._.element = element;
return this;
}
applyEvents(events, callback) {
events.forEach((event) => {
this._.element.addEventListener(event, (ev) => {
if (typeof callback === 'function') {
callback(event, ev);
}
})
})
}
}