复制代码 代码如下:
jQuery.prototype.test=function(){
this.css("color","#99");//这里的this是jquery对象,而不是dom对象
alert(this[0]);//这里的this[0]指的是dom节点对象
}

复制代码 代码如下:
$("body").click(function(){
$(this).test();
$(this).test().html(this.nodeName).hide(10000);
})

在页面上使用click方法的时候相当于new了一个Jquery对象然后调用他的click方法,方法里面的参数是一个javascript的function函数,里面的this指的是javascript对象,this是javascript自身的 语法关键字,它指向一个javascript对象,所以可以使用所指向的目标javascript对象所拥有的方法

而jQuery.prototype.test相当于在就query对象中新建一个test的方法,所以里面的this理所应当的就是就jquery对象

通过this[0]可以把jquery对象转化成dom节点对象
因为this永远指向调用该方法(函数)的那个对象(call,apply方法除外)
标签:
this,$(this)

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
狼山资源网 Copyright www.pvsay.com

评论“对于this和$(this)的个人理解”

暂无“对于this和$(this)的个人理解”评论...

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。