помещать части js в атрибут href
- плохая идея. Лучше всего добавлять обработчик с addEventListener
, но здесь вы можете обойтись без установки onclick
напрямую.
<a href="#" onclick="Foo(event);">Link</a>
и ваша функция будет выглядеть как
function Foo(e) {
var a = e.target || e.srcElement;
// TODO: stuff
if (e.preventDefault) {
e.preventDefault();
}
else {
return false;
}
}
поэтому, когда вы нажимаете на ссылку, Foo
вызывается с событием в качестве параметра. объект события имеет ссылку на элемент источника, например target
в стандартных браузерах или srcElement
в IE. комбо preventDefault
/ return false;
в конце не позволяет браузеру «перейти» по ссылке на #.
edit: если подумать, поскольку у вас много ссылок, при использовании jquery для добавления обработчиков рекомендуемый способ, вероятно, лучше (хотя первое решение все еще хорошо).
...
<a id="A5" href="#" >Link</a>
<a id="A6" href="#" >Link</a>
<a id="A7" href="#" >Link</a>
...
<script>
$('a').click(Foo);
</script>