你用箭头函数就是这样的结果,改用传统的匿名函数方式才能达到你的目的:
$("Button").click(function(){
//这里的this就是button对象本身
})
学前端也好久啦,看了很多文档,结合自己的一点经验来讲,对于this,最通俗易懂的理解就是:首先看个例子:这里的函数getFullName,在哪里调用呢,是不是需要写成person.getFullName(),所以getFullName里的this是指向person这个大对象~
几种常见的情况:
先看一个小例子
再看一个函数的例子
函数在哪里调用的,this就指向哪里。记得这句,就很好理解了呢~
函数在谁身上触发的,this就指向谁。
这个还蛮好理解的,
函数在谁身上触发的,this就指向谁。
看一个例子
解决方法
这样修改之后,this就会指向该user了;
var that= this
遍历一次body下的所有元素。给各元素添加click处理函数或者mousedown处理函数。var tgs=document.getElementsByTagName("*")
for(var i =0i<tgs.lengthi++){
var t=tgs[i]
t.onMouseDown=function(e){
var that=this
if(this.tagName &&(this.tagName==='table'||-----)){//这里判断有点粗糙,你还需要判断是否是tr或td
//该table的id或者比较别的也行,只要能判断是你需要的那个table
//改变table的样式
}else{//不是你指定的table
//恢复table的样式
}
}
}