Почему в видеоуроке от mail.ru написано $('a').click(function() {alert('lalala'); return false;});
и при нажатии на ссылку выскакивает alert и после нажатия на ок не пропускает дальше пользователя, при повторном нажатии на ссылку выскакивает alert
А в моем коде <div class="header__list_raw" onclick="userIsntLogged ();"></div>
js
function userIsntLogged () {
alert('Для начала войдите на сайт');
return false;
}
При нажатии на ссылку открывает alert после нажатия на ок переходит на ссылку, при повторном нажатии на ссылку alert не выскакивает, пока не обновишь страницу
Проблема в том, что вы по разному устанавливаете обработчик события.
$('a').click(function() {alert('lalala'); return false;});
<div class="header__list_raw" onclick="userIsntLogged ();"></div>
В первом случае вешается обработчик события на клик по ссылке и внутри возвращается false
дабы остановить всплытие и поведение по умолчанию. У вас же при клике выполняется функция, которая тоже возвращает false
, но есть одно НО
Ваш код js
выполняет примерно вот так
<div onclick="function(event) { userIsntLogged (); }">
</div>
То есть на самом деле js
оборачивает ваш код в функцию. Что бы работало, нужно что бы именно эта "нативная" ф-ция возвращала false
<div onclick="userIsntLogged (); return false">
</div>
// либо
<div onclick="return userIsntLogged ();">
</div>
P.S.
Возвращать false
уже не модно, это слишком неявный способ, потому что кроме отмены действия по умолчанию он еще и останавливает всплытие. Используйте лучше stopPropogation
, preventDefault
<div onclick="userIsntLogged (event);">
</div>
function userIsntLogged (e) {
e.stopPropagation(); // отменяем всплытие
e.preventDefault(); // отменяем действие по умолчанию
alert('Для начала войдите на сайт');
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть некий объект, внутри которого другие объекты доступны по ключам:
Не получается подключить content script с backgroundНе реагирует