JavaScript:getclicked元素
我需要在函数getClickedElement中获取clicked元素。我该怎么做JavaScript:getclicked元素,javascript,Javascript,我需要在函数getClickedElement中获取clicked元素。我该怎么做 <html> <head> <script> function getClickedElement () { } </script> </head> <body> <a href="javascript:alert(getClickedElement())" id="test">click me!!!&
<html>
<head>
<script>
function getClickedElement () {
}
</script>
</head>
<body>
<a href="javascript:alert(getClickedElement())" id="test">click me!!!</a>
</body>
</html>
函数getClickedElement(){
}
我只能设置href属性。
我无法设置onclick事件,因为该元素是由第三方库生成的
谢谢。
<a href="javascript:alert(getClickedElement('test'))" id="test">click me!!!</a>
<script>
function getClickedElement (id) {
return document.getElementById(id);
}
</script>
函数getClickedElement(id){
返回文档.getElementById(id);
}
或者,如果无法预测ID,可以在页面加载后使用Javascript附加事件。看看jQuery。使用类似于
$('a')的内容。单击(函数(){returnthis.id;})代码>您无法在javascript:
URL中获取单击的元素。事件已经完成,因此没有event.target
(或IE的window.event.srcElement
),并且javascript:
链接不会使用此
集调用(因此您会得到window
)
当然,如果您知道有问题的链接是id=“test”
,那么您可以执行document.getElementById('test')
,但我怀疑这并不是您想做的重点
我只能设置href属性。我无法设置onclick事件,因为该元素是由第三方库生成的
修复或删除lib<代码>javascript:
URL是绝对可怕的,永远不应该使用
能否在页面的其他位置添加
?如果是这样,您可以将click
事件处理程序注入元素,而不需要任何额外的标记。例如:
for (var i= document.links.length; i-->0;)
if (document.links[i] is one of the links you want to target)
document.links[i].onclick= someHandlerFunction;
function someHandlerFunction() {
alert(this);
return false;
}
事实上,从JS(使用
on…
或通过addEventListener
使用attachEvent
IE回退)分配是添加事件处理程序的最佳实践方式。您可以将其作为参数传递,然后就可以知道您要查找的元素是什么。
例如:
<html>
<head>
<script>
function getClickedElement ($this) {
}
</script>
</head>enter code here
<body>
<a href="javascript:alert(getClickedElement(this))" id="test">click me!!!</a>
</body>
</html>
函数getClickedElement($this){
}
在这里输入代码
希望它能帮助你,它帮助了我:)下面的Statkoverflow问题提供了一种检测单击元素的方法
我不知道元素ID。它是由第三方库生成的。我只能设置href值。加载页面后,您可以使用Javascript附加事件。看看jQuery。使用类似于
$('a')的内容。单击(函数(){returnthis.id;})如果你告诉我为什么需要这个,你想做什么,这会很有帮助。也许还有其他方法。什么是第三方图书馆?人们对回答一个以前已经回答过的老问题兴趣不大。此外,您的回答也没有帮助,因为原始海报(OP)没有使用jquery。这正是我想要的!虽然这个答案很有帮助,但我不确定回答者所说的“document.links[I]是您想要定位的链接之一”是什么意思。有人会如何在实际代码中写出这种比较?为什么这个答案的作者不直接写出实际的代码,而不是随意地跳进外行的术语中?
$(document).click(function(event) {
var text = $(event.target).text();
});