Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.10.2020, 21:24
Аспирант
Отправить личное сообщение для Agapkin Посмотреть профиль Найти все сообщения от Agapkin
 
Регистрация: 14.05.2016
Сообщений: 33

Очередность обработки событий
У элемента есть 2 обработчика на одно событие.
Один обработчик в системных файлах cms-ки, который трогать нельзя.
Второй обработчик мой.
см вложение

Задача отменить/заменить первый на второй.
Какие есть варианты в javascript??
Может как то переопределить функцию?
или
Есть ли какая то последовательность выполнения обработчиков?

Сейчас сделал так, в своем обработчике:
this.inputSearch.addEventListener('blur', function (event) {
                        event.stopImmediatePropagation();
                    });

но в списке консоли хрома он второй и не уверен, правильно ли.
Подскажите плз.
Изображения:
Тип файла: jpg Аннотация 2020-10-22 212005.jpg (10.3 Кб, 7 просмотров)
Ответить с цитированием
  #2 (permalink)  
Старый 22.10.2020, 21:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Agapkin,
создайте копию элемента с нужным функционалом и замените оригинал на копию.
Ответить с цитированием
  #3 (permalink)  
Старый 22.10.2020, 22:41
Аспирант
Отправить личное сообщение для Agapkin Посмотреть профиль Найти все сообщения от Agapkin
 
Регистрация: 14.05.2016
Сообщений: 33

Сообщение от рони Посмотреть сообщение
Agapkin,
создайте копию элемента с нужным функционалом и замените оригинал на копию.
слишком дорого.

в рамках того что есть, можно ли что то сделать?
И можно ли оставить тот вариант, где:
event.stopImmediatePropagation();

По крайней мере он работает!
Вот только нет у меня уверенности в том что он будет работать всегда и везде, т.к. я не программист

Есть ли у кого нибудь ответ на вопрос:
Есть ли какая то последовательность выполнения обработчиков?
Я так понимаю должны сработать в том порядке как на вложении из первого сообщения.
Ответить с цитированием
  #4 (permalink)  
Старый 23.10.2020, 10:16
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,745

Сообщение от Agapkin
По крайней мере он работает!
Вот только нет у меня уверенности в том что он будет работать всегда и везде, т.к. я не программист

Есть ли у кого нибудь ответ на вопрос:
Есть ли какая то последовательность выполнения обработчиков?
Я так понимаю должны сработать в том порядке как на вложении из первого сообщения.
Печаль в том, что в стандартах это не определено.
Поэтому каждый браузер имеет права реализовывать это как ему хочется. Чаще всего, действительно, в порядке их присоединения.
Ответить с цитированием
  #5 (permalink)  
Старый 23.10.2020, 13:48
Аспирант
Отправить личное сообщение для Agapkin Посмотреть профиль Найти все сообщения от Agapkin
 
Регистрация: 14.05.2016
Сообщений: 33

Сообщение от voraa Посмотреть сообщение
Печаль в том, что в стандартах это не определено.
Поэтому каждый браузер имеет права реализовывать это как ему хочется. Чаще всего, действительно, в порядке их присоединения.
И об этом сказано на https://developer.mozilla.org/ru/doc...atePropagation
Цитата:
Если несколько слушателей прикреплены к одному и тому же элементу с одинаковым типом события, тогда они будут вызваны в порядке своего добавления. Если один из этих слушателей вызовет event.stopImmediatePropagation() тогда события оставшихся слушателей вызваны не будут.
Но парадокс в том что работает!!, в разных браузерах на разных устройствах, при том что мой слушатель прикручен вторым(судя по скрину). Напомню что задача была заглушить действия первого.
Ответить с цитированием
  #6 (permalink)  
Старый 23.10.2020, 14:09
Аватар для SuperZen
Профессор
Отправить личное сообщение для SuperZen Посмотреть профиль Найти все сообщения от SuperZen
 
Регистрация: 08.11.2017
Сообщений: 642

если все делать через ###, то через ### и получится )

как идея: https://jsfiddle.net/tomas1000r/RDW7F/
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Очередность выполнения событий Fedya Общие вопросы Javascript 3 02.08.2014 17:47
самые первые скрипты для обработки событий формы olga22_03 Ваши сайты и скрипты 3 03.04.2013 13:59
Очередность выполнения 2х событий zilker Events/DOM/Window 11 20.12.2012 17:17
Очередность событий tarya AJAX и COMET 2 29.03.2011 03:22
Последовательность обработки событий rolling Events/DOM/Window 2 14.09.2009 23:26