function hideBox(){
$(this).next().css("display","none");
}
上面这个函数内部的this,指向的谁呢?
假如我在html内联样式调用:
<a href="javascaript:;" onclick="hideBox()">11111111111111</a>
<span>我是等待被删除的元素</span>
那么这个this指向的就是window,那最后JS执行到的相当于:window.next(); 是谁?我也不知道。
怎么才能做到this指向的是a标签,顺利地隐藏掉span标签呢?↓
代码如下:
function hideBox(that){
$(that).next().css("display","none");}调用时:<a href="javascaript:;" onclick="hideBox(this)">11111111111111</a>
<span>我是等待被删除的元素</span>把this当参数传给这个函数内部,这个this就指向的是触发的元素了(也就是《a》标签了)!
本文探讨了JavaScript中函数内部this关键字的指向问题,并通过实例展示了如何正确设置this指向来实现DOM元素的操作。
303

被折叠的 条评论
为什么被折叠?



