function linkClick(e) {
alert(e.target.href);
}
links = document.getElementsByTagName('a');
for (i = 0; i < links.length; i++)
links[i].addEventListener('click', linkClick, false);
function myFunc(link) {
alert(link.href);
return false; // return false if you don't want to actually navigate to that link
}
<a href onclick="return myFunc(link)">something</a>
4条答案
按热度按时间blpfk2vs1#
mwg9r5ms2#
你的
document.onclick
在整个文档中注册了这个处理程序,但是你应该把它添加到每个链接中,你可以用JavaScript来做,使用Prototype或jQuery这样的框架会更容易:但是也可以使用纯JS将
getElementsByTagName
函数与循环结合起来(参见Delan的新答案)。voase2hg3#
它不会像这样工作,你需要为每个锚点设置一个onclick处理程序。最简单的方法是使用javascript框架,如jQuery或Prototype或类似的东西。
扩展函数以接收调用对象:
jQuery:
原型:参见Kau-Boy的答案
ct3nt3jp4#