#gwt #java
Я использую оба метода, когда хочу закончить обработку события. Примерно как метод comsume() в Swing. И всегда ставлю вызовы этих методов вместе. Есть ли разница между preventDefault() и stopPropagation()? В документации сказано, что stopPropagation Останавливает распространение базового нативного события. preventDefault Предотвращает действие по умолчанию базового нативного события. Как-то так. Но ясности это не вносит.
Ответы
Ответ 1
preventDefault запрещает стандартное поведение элемента. Например, клик на кнопку сабмита производит отправку формы, preventDeafult это прекратит. Нажатие на ссылку перенаправляет на другую страницу $('a').preventDefault(); запретит это действе. Ссылка станет просто активной подчеркнутой областью. stopPropagation запрещает передачу события от ребенка к родителю, то есть, если мы кликнули по вложенному диву, его родитель "не почувствует" этого нажатия. Идеи примеров использования. preventDefault: Тут все просто. Аяксовые ссылки. stopPropagation: например, кнопки поверх картинки. Если кликаем по картинке, включается следующая, если по кнопкам - какое-то другое действие, скажем, лупа. P.S. кликами все не ограничивается ;)Ответ 2
Ну про stopPropagation ни чего сказать не могу, а про preventDefault этот метод не дает сработать базовым функциям, например хочешь ты на какую нибудь ссылку повесить обработчик вот тогда тебе это и надо ставить что б комп не перешол по сслыку а выполнил твой код. Как то так.
Комментариев нет:
Отправить комментарий