Каков эффект добавления 'return false' в прослушиватель событий щелчка? - PullRequest
340 голосов
/ 24 сентября 2008

Много раз я видел такие ссылки на страницах HTML:

<a href='#' onclick='someFunc(3.1415926); return false;'>Click here !</a>

Каково влияние return false там?

Кроме того, я обычно не вижу этого в кнопках.

Это указано где-нибудь? В некоторых спецификациях в w3.org?

Ответы [ 13 ]

3 голосов
/ 30 марта 2016

return false предотвращает перемещение по странице и нежелательную прокрутку окна вверх или вниз.

onclick="return false"
3 голосов
/ 08 марта 2014

Я удивлен, что никто не упомянул onmousedown вместо onclick.

onclick='return false'

не улавливает поведение браузера по умолчанию, в результате чего (иногда нежелательный) выбор текста происходит для mousedown, но

onmousedown='return false'

делает.

Другими словами, когда я нажимаю на кнопку, ее текст иногда выбирается случайно, изменяя внешний вид кнопки, что может быть нежелательным. Это поведение по умолчанию, которое мы пытаемся предотвратить здесь. Однако событие mousedown регистрируется до click, поэтому, если вы только запретите такое поведение в обработчике click, это не повлияет на нежелательный выбор, возникающий из события mousedown. Таким образом, текст по-прежнему выбирается. Однако предотвращение значения по умолчанию для события mousedown выполнит эту работу.

См. Также event.preventDefault () против возврата false

3 голосов
/ 24 сентября 2008

Возврат false будет препятствовать навигации. В противном случае местоположение станет возвращаемым значением someFunc

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...