которое запускает jQuery методом trigger()?)))
По моему никак
Это очень грустно(((
Открой jq найди там этот метод , он там на чистом js)
Что значит поймать? trigger же просто создает событие и вызывает его На чистом как-то так https://developer.mozilla.org/en-US/docs/Web/Events/Creating_and_triggering_events
Это если ты про аналог trigger для ванилы
Есть msOptionsPrice2 он вызывает событие msoptionsprice_product_action, которое не ловится так document.addEventListener('msoptionsprice_product_action', () => {})
Про аналог я знаю
А диспатч пробовал?
Ну как я dispatch попробую, если это чужой компонент и мне нельзя его переписывать)))
Хочешь я попрошу Пашу, и он тебе персонально разрешит?
Нет, это внутреннее убеждение, Паша тут не поможет)))
Вот что в jq (function($) { $.fn.extend({ trigger: function(type, data) { return this.each(function() { if (typeof type == "string" && type.startsWith("test:")) { this.dispatchEvent(new window.CustomEvent(type, data)); }else{ jQuery.event.trigger(type, data, this) } }); } }); })(jQuery);
Легче не стало(((
trigger в jq равен dispatchEvent(event)
Тогда почему $(document).on срабатывает, а document.addEventListener нет?
Потому что может быть что событие изолированно или попробовать отловит его через settimeout
Что значит изолировано?
Ну оно известно именно в той функции в которой оно объявляется
Через settimeout тоже нет.
А через setintreval раз в секунду попробуй.
Как поймаешь событие останавливай интервал
Так не ловится
Тебе нужно в dom поймать изменения?
Да, я уже понял что надо использовать MutationObserver
А там можно как-то реагировать только на последнее изменение? А то при смене опции он аж 6 раз срабатывает, мне столько не надо.
https://stackoverflow.com/questions/35097520/mutationobserver-for-class-not-for-id
По поводу отловить событие #jQuery, я конечно не мастер но JavaScript happens, поэтому можно переопределить любой JQ-метод и добавить туда callback или что нужно. Вроде бы это работает вообще для всего и в самом #JS, типа фича языка. Что-то там со словом prototype.
Не, я решил через MutationObserver сделать
Обсуждают сегодня