我的网页上有很多链接,如下所示:
<a href="javascript:Test.Test(this);">Testing</a>
使用this
关键字,我希望获得该功能的HTML元素所有者。但是,它显示了我window
对象。这是为什么?我如何获得(上面使用的代码)HTML元素,该函数的所有者?
在我的网页上,HTML结构要复杂得多。每个超链接都在其他元素内部,因此如果this
显示当前元素,则很容易获得父元素。
var Test = function(){
var Test = function(element){
debugger;
}
return {
Test: Test
}
}();
<div data-iuser_key='49499'>
<a href="javascript:Test.Test(this);">Testing</a>
</div>
答案 0 :(得分:1)
你期待什么?您的代码是在javascript:
内运行的,它没有引用目标元素。默认情况下,this
引用window
。
相反,请使用正确的点击处理程序:
<a href="#" onclick="Test.Test(this)">