为了账号安全,请及时绑定邮箱和手机立即绑定

请问jQuery自定义函数的回调函数中$(this)指向问题?

请问jQuery自定义函数的回调函数中$(this)指向问题?

一只甜甜圈 2019-07-09 05:04:53
请问jQuery自定义函数的回调函数中$(this)指向问题?
查看完整描述

3 回答

?
繁花如伊

TA贡献2012条经验 获得超12个赞

$(document).ready(function() {
var btn = $(".ajaxBtn");
btn.ajaxBtn(function() {btn.hide(500);});
});

 


查看完整回答
反对 回复 2019-07-10
?
茅侃侃

TA贡献1842条经验 获得超21个赞

恭喜你掉到了名为对象相等判断的大坑
$(this)是个JQuery对象
$(this).parent().children().last()也是个JQuery对象
他俩相等当且仅当他俩是同一个对象, 而不是他们的内容相等
但jQuery大部分查找/封装操作都会生成新的对象
所以他们永远不相等

所以解决方法
this==$(this).parent().children().get(-1)



查看完整回答
反对 回复 2019-07-10
?
守候你守候我

TA贡献1802条经验 获得超10个赞

function a() 定义在 第一个 $(){} 内的匿名函数的作用域之内,第二个 $(){} 内的函数无法访问他
跟下面的语法结构类似
function f1(){
function a(){
alert('a');
}
a(); //ok
}

function f2(){
a();//无法访问a 函数
}



查看完整回答
反对 回复 2019-07-10
  • 3 回答
  • 0 关注
  • 479 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信