猿问

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

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


弑天下
浏览 637回答 3
3回答

天涯尽头无女友

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

BIG阳

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

肥皂起泡泡

function a() 定义在 第一个 $(){} 内的匿名函数的作用域之内,第二个 $(){} 内的函数无法访问他跟下面的语法结构类似function f1(){function a(){alert('a');}a(); //ok}function f2(){a();//无法访问a 函数}
随时随地看视频慕课网APP
我要回答