如何在onclick处理函数中得到触发click的HTML element

示例HTML代码如下:

<!DOCTYPE HTML>
<html>
<head>
<title>onclick test</title>
<script type="text/javascript">
function whoClick(){
    console.log(this);
}
</script>
<body>
<a href="javascript:void(0)" onclick="return whoClick();">Click Me</a>
</body>
</html>

运行结果:

Window jstest.htm

期望的结果:

<a onclick="return whoClick(this);" href="javascript:void(0)">

我的问题是:

如何不通过给whoClick()传参的方式得到这个a标签元素?

繁花不似锦
浏览 1313回答 14
14回答

慕村225694

同感觉,可以用在click中用$(this)获得点击的发起源,在获得其他参数,方便多了

慕容708150

<!DOCTYPE HTML> <html> <head> <title>onclick test</title> <script type="text/javascript"> function whoClick(from){ console.log(from); } </script> <body> <a href="javascript:void(0)" onclick="return whoClick(this);">Click Me</a> </body> </html> 假如使用jQuery ,事件发送对象可以从this获得。 event.srcElement。 是这个吧?你应该知道这个的吧? 通过传递参数,可以写成this:  

蝴蝶不菲

这是方法知道,需要给whoClick传参数,我是想不传参数实现。

弑天下

@dudu: 在ie里,有event.srcElement,别的浏览器就不清楚了。

翻翻过去那场雪

@笨笨蜗牛: Chrome中有event.target

阿晨1998

@dudu: 哈,查看jQuery的代码,看用的是什么来识别FF。

墨色风雨

@笨笨蜗牛: $.browser.mozilla

紫衣仙女

@dudu: 貌似FF下也是用vevent.target的吧?

阿波罗的战车

@无之无: test

慕雪6442864

不懂,帮顶个,关注下。。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript