Код: Выделить всё
//to trigger click with params
jQuery(domElement).trigger( 'click', [ additionalParameters ] );
//to listen click the params
jQuery( domElement ).on( 'click', function( event, parameters ) {
event.stopImmediatePropagation();
}
Мы не можем использовать «новый CustomEvent», поскольку он не принимает «щелчок» как событие.Мы не можем использовать «new MouseEvent», потому что в отличие от «CustomEvent» он не имеет возможности передавать параметры.
Мы можем использовать что-то вроде этого:
Код: Выделить всё
//to trigger click with params
domElement.addEventListener("click", function(e) {
var event = new CustomEvent("fakeClick", {'detail': {
custom_info: 10,
custom_property: 20
}});
this.dispatchEvent(event);
});
//to listen click the params
domElement.addEventListener('fakeClick', function(event) {
var parameters = event.detail;
event.stopImmediatePropagation();
});
Как jQuery может это сделать? Должен быть способ сделать это, используя чистый JavaScript.
Редактировать: какой-то случайный парень упомянул о другой теме, которая не имеет отношения к делу. Я спрашиваю о том, как jquery это делает. Вот что он упомянул:
=> Как передать аргументы в функцию прослушивания addEventListener?
Подробнее здесь: https://stackoverflow.com/questions/692 ... -parameter
Мобильная версия