Не удается отключить / отключить EventListener, установленный внешним скриптом

#javascript #jquery

#javascript #jquery

Вопрос:

Я столкнулся с проблемой, для которой мне еще предстоит найти решение. В настоящее время я работаю над проектом, в котором мне необходимо повторно использовать уже существующие компоненты. У меня нет доступа к источнику этих компонентов и я не могу изменить исходные файлы. Это означает, что новое поведение или стиль должны быть «переопределены» новыми файлами, которые я создаю.
Теперь я столкнулся с проблемой, когда к форме с помощью jQuery прикреплен eventlistener «отправить» .on('submit') . Согласно некоторым найденным мной потокам, я должен отсоединить even using .off() , но это не работает. Я тоже пытался .unbind() , но безуспешно. Eventlistener прикрепляется следующим образом:

  $(element).on("submit.Parsley", function(e) {
 

Похоже, что parsley используется для проверки формы.

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

Любая помощь приветствуется.

Комментарии:

1. api.jquery.com/off

2. События должны быть не связаны той же функцией, с которой они были связаны, поэтому, если у вас нет доступа к изначально связанной функции, вы не можете ее отменить. Но если событие было связано с on , попробуйте off() без параметров. Вы не можете отменить привязку отдельных обработчиков, off если у вас нет исходного метода.

3. @Keith К сожалению, это, похоже, тоже не работает. Я также пытался отменить привязку событий с помощью тайм-аута, просто чтобы убедиться, что я не вызываю функцию unbind слишком рано. Я здесь в растерянности

4. @Keith Я не совсем уверен, что вы имеете в виду, когда говорите, что мне нужен доступ к изначально связанной функции. Не могли бы вы привести небольшой пример? Это помогло бы мне лучше понять проблему.

5. @Keith В jQuery вы можете фактически отключить всех слушателей одновременно