首页 > Web开发 > 详细

jQuery中this与$(this)的差别

时间:2019-04-09 15:59:28      阅读:128      评论:0      收藏:0      [点我收藏+]

jQuery中this与$(this)的差别

  1. $("#textbox").hover(? ?
  2. ??????function()?{? ?
  3. ???????????this.title?=?"Test";? ?
  4. ??????},? ?
  5. ??????fucntion()?{? ?
  6. ??????????this.title?=?"OK”;? ?
  7. ??????}? ?
  8. );?

这里的this事实上是一个Html 元素(textbox),textbox有text属性,所以这样写是全然没有什么问题的。


可是假设将this换成$(this)就不是那回事了,Error--报了。this与$(this)的差别在此。

  1. Error?Code:? ?
  2. $("#textbox").hover(? ?
  3. ???????function()?{? ?
  4. ??????????$(this).title?=?"Test";? ?
  5. ???????},? ?
  6. ???????function()?{? ?
  7. ??????????$(this).title?=?"OK";? ?
  8. ???????}? ?
  9. );?

这里的$(this)是一个JQuery对象,而jQuery对象沒有title 属性,因此这样写是错误的。

JQuery拥有attr()方法能够get/set DOM对象的属性,所以正确的写法应该是这样:

正确的代码:

  1. $("#textbox").hover(? ?
  2. ??????function()?{? ?
  3. ?????????$(this).attr(’title’,?‘Test’);? ?
  4. ??????},? ?
  5. ??????function()?{? ?
  6. ?????????$(this).attr(’title’,?‘OK’);? ?
  7. ??????}? ?
  8. );?

使用jQuery的优点是它包裝了各种浏览器版本号对DOM对象的操作,因此统一使用$(this)而不再用this应该是比較不错的选择。



jQuery中this与$(this)的差别

原文:https://www.cnblogs.com/ldxsuanfa/p/10677450.html

(0)
(0)
   
举报
评论 一句话评论(0
分享档案
最新文章
教程昨日排行
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!