Если вы хотите предотвратить, следуя ссылке, вы должны добавить event.preventDefault()
в ваш обработчик кликов (event.returnValue = false;
в IE).
Кажется, что вы сразу после смотрите ссылки, а не ее функциональность (или цель). Если это так, вы можете использовать button
с CSS для его стиля.
Следует избегать наличия реальных ссылок с содержимым href #
или javascript:void(0)
.
Дальнейшее объяснение:
Используя ссылку только, чтобы иметь что-то «интерактивное» не хорошо. Ссылка имеет четкий синтаксический смысл. Поскольку вы можете назначить обработчик события click
для каждого элемента, для этого вы можете использовать любой другой элемент.
Синтаксически наиболее правильный (imo) будет button
, так как вы все равно сможете использовать tab
для навигации по ним. Вы можете укладывать их с помощью CSS, чтобы сделать их похожими на ссылку, если вы хотите (see this example)
Теперь о предотвращении действия по умолчанию:.
Предполагая, что у вас есть нормальной связи с надлежащим href
значения и вы хочет перехватить щелчок. в обработчик щелчка присвоенным элемента, например
link.addEventListener('click', function(event){
// some code
event.preventDefault();
}, false);
с использованием event.preventDefault()
предотвращает действие по умолчанию, в случае ссылки, является следующий URL-адрес.
(приведенный выше код является примером для W3C совместимых браузеров, IE немного отличается)
@delnan: Он прокручивает к вершине обычно. – configurator
просто не использует событие onclick внутри html. –
@delna: 1) Ваша страница должна иметь вертикальную высоту, которая должна включать полосу прокрутки; 2) поместите ваш href = "#" в том же месте в середине вашей страницы, прокрутите вниз, чтобы ваш href = "#" оставался сверху вашего окна просмотра. 3) Нажмите. ;) – MEM