我希望它打印“a”,因为当我调用 foo(this)
时,参数似乎是链接标记。
<script type="text/javascript">
function foo (e) {
alert (e .tagName);
}
</script>
<a href="javascript:foo(this)">click</a>
相反,它打印“undefined”。如果我 alert(e)
它说“对象窗口”。我如何让 foo
知道哪个元素启动了它?无需传递/查找 ID。
最佳答案
您不应该为 JavaScript 使用 href。不好的做法是使用 onclick,this
会神奇地指向链接。
<a href="#" onclick="foo(this)">click</a>
您还需要取消链接的点击 Action 。使用 return false 或使用 preventDefault 取消事件。
最好用Unobtrusive JavaScript附加事件
关于javascript - <a href ="javascript:foo(this)"> 传递Window,我要tag元素本身,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9317643/