Я задавался вопросом, были ли event.preventDefault()
и return false
одинаковыми.
Я сделал несколько тестов, и кажется, что
-
Если обработчик события добавляется с использованием старой модели, например
elem.onclick = function(){ return false; };
Затем
return false
предотвращает действие по умолчанию, такое какevent.preventDefault()
. -
Если обработчик события добавляется с использованием, например,
addEventListener
elem.addEventListener( 'click', function(e){ return false; }, false );
Тогда
return false
не препятствует действию по умолчанию.
Все ли браузеры ведут себя так?
Есть ли больше различий между event.preventDefault()
и return false
?
Где я могу найти некоторую документацию (я не мог в MDN) о return false
поведения, подобного event.preventDefault()
в некоторых случаях?
Мой вопрос касается только простого javascript, а не jQuery, поэтому, пожалуйста, не помечайте его как дубликат event.preventDefault() и возвращайте false, даже если оба вопроса имеют почти одинаковый заголовок.