#jquery #event-bubbling
#jquery #событие-пузырение
Вопрос:
Как мне предотвратить всплывающее окно dom при выполнении чего-то подобного:
$("*").live('mousemove',function(e){
page.change_state();
});
Где нам нужен любой обработчик щелчка, который этот элемент также должен выполнить, но мы не хотим, чтобы это действие повторялось в DOM.
Мы не можем использовать preventDefault
или return false
Ответ №1:
Используйте event.stopPropagation().
Комментарии:
1.
$('*').live('click', function(event) { ... }
чтобы уточнить2. из любопытства, зачем привязывать его к * вместо просто <a> s, например?
3. @Matijs, я изменил свой код на реальный, приведенный выше. я хочу что-то делать всякий раз, когда пользователь перемещает мышь в любом месте страницы
4. Это звучит как кошмар производительности… вы уверены, что не можете быть более конкретными, чем это?
5. @Matijs, не забудь отметить меня, когда будешь отвечать, иначе я этого не получу …. с тех пор я немного изменил свой код