Задать вопрос

Jquery проверка наличия live обработчика?

Есть ли какие то наработки по сабжу?



Понятно, что isDefaultPrevented не работает (а жаль:)).



Нужно для того, чтобы выполнить функцию в том случае, если на элемент не навешен ни один обработчик (включая live и прямые навешивания)

Конечно можно для таких элементов, к примеру, добавил специальный класс, но не охота лопатить весь html код.



Спасибо
  • Вопрос задан
  • 3440 просмотров
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
Riateche
@Riateche
Напишите обертку для live (какую-нибудь jQuery.fn.my_live), которая с помощью data() добавляет в объект пометку о навешенном обработчике, а затем вызывает live. И по всему коду замените live на my_live. В дальнейшем с помощью data ищете в объекте пометку: если ее нет, значит, обработчика нет.
Ответ написан
taliban
@taliban
php программист
можно проверить любой обработчик кроме live и delegate.
Ответ написан
Комментировать
@nonexistent
возможно это костыль — не знаю ситуацию, но для live есть die
Ответ написан
@1nd1go
Внутрях есть массив обработчиков: handlers называется. МОжно по коду поискать. Его вроде достать можно через data(«events»). Так соответственно и принимается решение о наличии обработчиков.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 13:22
30000 руб./за проект
18 дек. 2024, в 12:37
10000 руб./за проект
18 дек. 2024, в 12:22
5000 руб./за проект