Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > JavaScript: Общие вопросы > Как перехватить клик по ссылке? |
Автор: Greendrake 24.9.2005, 00:23 | ||
Как сделать, чтобы при нажатии на ссылку
вызывалась необходимая функция, НО: при этом переход по ссылке НЕ выполнялся?? Это нужно, чтобы реализовать навигацию с помощью XMLHttpRequest, но при этом не потерять индексируемость страницы поисковиками. |
Автор: Zeroglif 24.9.2005, 01:03 | ||
Это?
|
Автор: Greendrake 24.9.2005, 08:48 | ||||
Абсолютно точно, спасибо! Для меня всегда оставалось загадкой, к чему все эти return true и return false в конце онкликов. Пробовал return true - не получалось, а return false не догадался..... |
Автор: o.s.a. 24.9.2005, 09:03 | ||||||
Просто если писать
то сначала выполнится функция, а потом все равно произойдет переход по ссылке, а если
то перехода по ссылке не будет |
Автор: Zeroglif 24.9.2005, 12:20 | ||||
Есть ссылка:
Скажем так, при клике на эту сслылку браузер смотрит в основной обработчик события - переход по адресу в атрибуте href. Но так как мы прописали дополнительный обработчик, то браузер сначала займётся им, а потом, в зависимости от того вернули ли ему false или true, вернётся к основному обработчику. Иными словами работает анонимная функция:
Функция вернула false - основной обработчик забыт. Правда, можно разбираться с этой проблемой и другими средствами (см. метод preventDefault() или свойство returnValue)... |