vityachis
@vityachis
Yii2/Laravel Developer

Как правильно создать свое событие в JS (можно на JQuery)?

Требуется что бы была возможность использовать конструкцию:
$(elem).on('customEvent', function(param1, param2, param3) { /*...*/ });

customEvent - это свое созданное событие.
param1, param2, param3 - это свои параметры, которые должны передаваться при отработке события.

Сейчас попробую пояснить, есть Pjax (PushState + Ajax), там есть событие: pjax:success, его можно использовать как:
$(elem).on('pjax:success', function(data, status, xhr, options) { /* ... */ });

И как видно передаються свои параметры, мне по сути нужно сделать так же. Что бы можно было отслеживать событие через метод .on(), а так же что бы можно было передавать различные параметры.
---
Смотрел в коде того модуля и ничего не понял. Читал в инете, гуглил, много инфы, но ничего не получается понять, возможно потому что написано сложно для меня. Может как обычно пишут только основы, а что и как использовать дальше думайте сами...
В общем буду очень признателен, если оставите не просто ссылку, а напишите здесь код с коротким пояснением, что бы позже можно было отследить через .on() и передать несколько параметров.
  • Вопрос задан
  • 83 просмотра
Решения вопроса 1
yellow79
@yellow79
Senior Software Engineer
$(document).on('customEvent', function(event, param1, param2, param3) { 
    console.log(param1, param2, param3); 
});
$(document).trigger("customEvent", [ "param1", "param2","param3" ]);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы