2015-03-05 2 views
0

Я знаю, что на этот вопрос был дан ответ, но все ответы относятся к конкретному браузеру. Мой вопрос прост: Есть ли способ отслеживать все запущенные события (информация, которая мне нужна, - это событие с увольнением и элемент, который его активировал) с помощью Javascript?Мониторинг отключен События Javascript (независимо от браузера)

Я думал о настройке прослушивателя событий для всех событий и всех элементов, но это очень непрактично, и это не сработало бы с выполненными на заказ событиями.

+0

Вместо прослушивания всех событий, почему вы не работаете в АОП-то образом, вводя аспект всех слушателей событий? – Sphaso

ответ

-1

Есть что-то, что может вам помочь.

Вы можете использовать Objects.observe Ф.О. объекта мониторинга

Там также мутацию event listeners для определенного йота элемента и mutation observer.

Но если вам действительно нужно отслеживать все события, вы можете переопределить функцию addEvent. Я предполагаю, что вам нужно это только для отладки и тестирования чего-то, иначе это не очень хорошая практика.

// The magic 
var oldAddEventListener = EventTarget.prototype.addEventListener; 

EventTarget.prototype.addEventListener = function(eventName, eventHandler){ 
    // DO YOUR MAGIC 
    oldAddEventListener.call(this, eventName, function(event) { 
     // DO YOUR MAGIC 
     eventHandler(event); 
    }); 
}; 

Более подробную информацию о https://css-tricks.com/capturing-all-events/

Смежные вопросы