当前位置: 首页 > news >正文

JQuery -- this 和 $(this) 的区别

起初以为this和$(this)就是一模子刻出来。但是我在阅读时,和coding时发现,总不是一回事。

What is "this"?

In many object-oriented programming languages, this (or self) is a keyword which can be used in instance methods to refer to the object on which the currently executing method has been invoked.

 

$("#textbox").hover( 
     
function() { 
          
this.title = "Test"
      }, 
     
fucntion() { 
         
this.title = "OK”; 
  
    } 
);

这里的this其实是一个Html 元素(textbox),textbox有text属性,所以这样写是完全没有什么问题的。
但是如果将this换成$(this)就不是那回事了,Error--报了。

Error Code:
$("#textbox").hover(
       function() {
          $(this).title = "Test";
       },
       function() {
          $(this).title = "OK";
       }
);

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

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

正确的代码:
$("#textbox").hover(
      function() {
         $(this).attr(’title’, ‘Test’);
      },
      function() {
         $(this).attr(’title’, ‘OK’);
      }
);

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

参考:http://remysharp.com/2007/04/12/jquerys-this-demystified/

 

相关文章:

  • 【原创】RabbitMQ 之 no_ack 分析
  • 解析XML文档大致流程以及相关方法
  • Tomcat日志分析
  • h5渲染性能一瞥
  • IIS7多域名绑定同一物理目录,设置不同默认文档的最佳解决方案
  • Hadoop分布式配置文件
  • Git 解决本地远端版本冲突
  • 使用Setup安装Windows8 RTM方法
  • Codeforces 101572 D - Distinctive Character
  • 中央政府释放重大利好 2015年信息消费将超3万亿
  • 在vue中使用SockJS实现webSocket通信
  • 虚度的日子们
  • Service 保活法之一
  • 新手学习SQL 注入式***
  • ajax取到数据后如何拿到data.data中的属性值
  • 收藏网友的 源程序下载网
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 【Amaple教程】5. 插件
  • 【css3】浏览器内核及其兼容性
  • android百种动画侧滑库、步骤视图、TextView效果、社交、搜房、K线图等源码
  • CentOS从零开始部署Nodejs项目
  • CSS盒模型深入
  • Electron入门介绍
  • Git学习与使用心得(1)—— 初始化
  • Hibernate最全面试题
  • JavaScript-Array类型
  • nginx 负载服务器优化
  • Python代码面试必读 - Data Structures and Algorithms in Python
  • TypeScript迭代器
  • 测试如何在敏捷团队中工作?
  • 更好理解的面向对象的Javascript 1 —— 动态类型和多态
  • 机器人定位导航技术 激光SLAM与视觉SLAM谁更胜一筹?
  • 聊一聊前端的监控
  • 前端技术周刊 2019-02-11 Serverless
  • 前嗅ForeSpider教程:创建模板
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 什么软件可以剪辑音乐?
  • 世界编程语言排行榜2008年06月(ActionScript 挺进20强)
  • 推荐一个React的管理后台框架
  • 翻译 | The Principles of OOD 面向对象设计原则
  • 关于Kubernetes Dashboard漏洞CVE-2018-18264的修复公告
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • #《AI中文版》V3 第 1 章 概述
  • #控制台大学课堂点名问题_课堂随机点名
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (二)Linux——Linux常用指令
  • (附源码)springboot车辆管理系统 毕业设计 031034
  • (附源码)ssm经济信息门户网站 毕业设计 141634
  • (没学懂,待填坑)【动态规划】数位动态规划
  • (四)JPA - JQPL 实现增删改查
  • (一)kafka实战——kafka源码编译启动
  • (一)UDP基本编程步骤
  • (最简单,详细,直接上手)uniapp/vue中英文多语言切换
  • .dwp和.webpart的区别
  • .net core webapi 大文件上传到wwwroot文件夹