如何使用javascript
获取div内部超链接执行的操作<div id="example">
<a href="#">a<a>
<a href="#">b</a>
<a href="#">c</a>
</div>
答案 0 :(得分:2)
var links = document.getElementById('example').getElementsByTagName('a');
links[0].onclick = function(){
alert('a clicked');
}
links[1].onclick = function(){
alert('b clicked');
}
links[2].onclick = function(){
alert('c clicked');
}
您也可以在循环中附加事件处理程序:
var links = document.getElementById('example').getElementsByTagName('a');
for(var i = 0;i < links.length; i++){
links[i].onclick = function(e){
var event = e || window.event;
alert(e.target.innerHTML + ' link was clicked!!!');
}
}
答案 1 :(得分:0)
我猜你是来自java背景。因此,默认情况下,在JavaScript中无法执行所执行的操作。既不是锚点也不是<a>
,锚点通常用于链接到外部或内部链接。
<a href="mypage.html"> Goes to a mypage.html </a>
正如您所采取行动所要求的是事件。为此你应该做这样的事情
<a href="#" onclick="test();">Test Link </a>
以上链接的作用是,执行javascript函数名称test();
function test() {
alert('ok the action is performed');
return false; //so that the browser does not decides to navigate after the function is executed
}
一些javascript库会为您提供一些解决方法。这是在JQuery中完成的基本示例
$("#example a">.click(function() {
//now you have got the action performed work around.
// You can use this as you like
// $this represent the item that was clicked
});
对于核心中的此功能。 @Headshota答案是很好的例子。
答案 2 :(得分:0)
@Headshota引用div
中所有链接的示例是合理的,我只是在扩展它。我不确定你的链接的action
是什么意思所以我假设你指的是它指向的网址,也许是目标(弃用)。
var links = document.getElementById('example').getElementsByTagName('a');
links[0].onclick = function(){
// `this` inside this handler points to the <a> element that has been clicked
var href = this.href //where the link points
var target = this.target //if required
//do something with href and target
return false; //don't follow the link
}
etc...
答案 3 :(得分:-1)
$("#example a").click(function() {
alert("action");
});