JQuery this 和 $(this) 的区别
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应该是比较不错的选择。
相关推荐
-
实例讲解JQuery中this和$(this)区别
平时很少在jquery中用到this.查看代码时发现用到了,就调试出this的值,心想原来如此.还是挺有用的.这里总结一下this与$(this)的区别和使用. $(this)生成的是什么? $()生成的是什么呢?实际上$()=jquery(),就是说返回的是一个jquery的对象. 通常我们为了简便直接使用$().实际上,该函数省略了一个参数context.根据选择器选取匹配的对象即$(selector, context),以jQuery包装集的形式返回. context可以是Dom对象集合或
-
jQuery中$this和$(this)的区别介绍(一看就懂)
// this其实是一个Html 元素. // $this 只是个变量名,加$是为说明其是个jquery对象. // 而$(this)是个转换,将this表示的dom对象转为jquery对象,这样就可以使用jquery提供的方法操作. (function($){ $.fn.hilight = function(options){ debug(this); var defaults = { foreground: 'red', background: 'yellow' }; var opts =
-
jQuery获取this当前对象子元素对象的方法
如下所示: <select id="city"> <option value="beijing">北京</option> <option value="shanghai">上海</option> <option value="shenzhen">深圳</option> </select> $(function(){ $("
-
浅谈jQuery this和$(this)的区别及获取$(this)子元素对象的方法
1.JQuery this和$(this)的区别 相信很多刚接触JQuery的人,很多都会对$(this)和this的区别模糊不清,那么这两者有什么区别呢? 首先来看看JQuery中的 $() 这个符号,实际上这个符号在JQuery中相当于JQuery(),即$(this)=jquery();也就是说,这样可以返回一个jquery对象.那么,当你在网页中alert($('#id'));时,会弹出一个[object Object ],这个object对象,也就是jquery对象了. 那么,我们
-
详谈jQuery中的this和$(this)
网上有很多关于jQuery的this和$(this)的介绍,大多数只是理清了this和$(this)的指向,其实它是有应用场所的,不能一概而论在jQuery调用成员函数时,this就是指向dom对象. $(this)指向jQuery对象是无可厚非的,但this就是指向dom对象,这个是因为jQuery做了特殊的处理. 在创建dom的jQuery对象时,jQuery不仅仅为dom创建一个jQuery对象,而且还将dom存储在所创建对象的数组中. 复制代码 代码如下: elem = document
-
浅谈jQuery before和insertBefore的区别
jQuery 中利用before和insertBefore可以达到在指定元素前插入指定内容,写法上有区别 先看一个例子: 在<div class='div1'>div1</div>前面插入<div>toInsertContent</div> 实现: $('<div>toInsertContent</div>').insertBefore($('.div1')); 或者 $('.div1').before('<div>toI
-
jQuery之DOM对象和jQuery对象的转换与区别分析
本文实例分析了DOM对象和jQuery对象的转换与区别.分享给大家供大家参考.具体分析如下: jQuery Hello World程序: <script type="text/javascript" src="xxx//jquery-x.y.z.js"> 引入jQuery.存在两个版本,jquery-x.y.z.min.js是精简压缩版,不带min的是开发版,代码中的注释和缩进等都被保留了. 注意路径中的"/"需要转义,即用"
-
JQuery的attr 与 val区别
.attr(attributeName) attributeName:需要获取属性的名称. 获取匹配集中第一个元素的属性值.1.6中attr返回属性的值为undefined,如果没有设置(set).另外,.attr不应该在普通对象.数组(array).窗口(window)或者文档中(document).如果需要获取或者设置DOM属性,则应该使用.prop()方法. 使用.attr方法获取元素属性的值有两个主要优点: 方便(Convenience):这个方法可以在JQuery对象上直接调用和串联别
-
jQuery绑定事件方法及区别(bind,click,on,live,one)
第一种方式: $(document).ready(function(){ $("#clickme").click(function(){ alert("hello world click") }) }) 第二种方式(简写方式为第一种): $('#clickmebind').bind("click", function(){ alert("Hello World bind"); }); 第三种方式: $('#clickmeon'
-
深入理解JQuery keyUp和keyDown的区别
定义和用法完整的 key press 过程分为两个部分:1. 按键被按下:2. 按键被松开. 当按钮被按下时,发生 keydown 事件. keydown() 方法触发 keydown 事件,或规定当发生 keydown 事件时运行的函数. 复制代码 代码如下: <html><head><script type="text/javascript" src="/jquery/jquery.js"></script><
-
JQuery this 和 $(this) 的区别
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").
-
jquery parent和parents的区别分析
可以看出parent的取值很明确,就是当前元素的父元素:parents则是当前元素的祖先元素.下面列出例子说明: 复制代码 代码如下: <div id='div1'><div id='div2'><p></p></div><div id='div3' class='a'><p></p></div><div id='div4'><p></p></div>
-
Jquery find与filter函数区别 说明
find()会在div元素内 寻找 class为classname的元素. filter()则是筛选div的class为classname的元素. 基本是find子元素找,filter是平级找 ·find 函数是在当前对象集合的子元素中进行查询; ·filter 函数是对当前对象集合进行过滤, 利用过滤条件缩小范围; ·find 函数的参数是 jQuery 选择器表达式; ·filter 的参数也是选择器表达式, 但可以有多个条件, 用逗号分隔(逻辑或关系); ·filter 的参数也可以是个函
随机推荐
- extJS中常用的4种Ajax异步提交方式
- win32下的命令行集合
- C++ 数据结构之水洼的数量算法
- MyBatis与Hibernate的比较
- Js日期选择器并自动加入到输入框中示例代码
- 使用javascript实现Iframe自适应高度
- Python 命令行非阻塞输入的小例子
- 一段asp防注入的通用脚本
- CentOS 7 中以命令行方式安装 MySQL 5.7.11 for Linux Generic 二进制版本教程详解
- JS实现下拉框的动态添加(附效果)
- 解析Jquery中如何把一段html代码动态写入到DIV中(实例说明)
- 详解JavaScript中的六种错误类型
- JS模拟简易滚动条效果代码(附demo源码)
- Java正则表达式的语法及示例解析
- 浅谈Slf4j与其他日志系统兼容的使用方法
- jQuery Dom元素操作技巧
- python PyTorch预训练示例
- TensorFlow实现Batch Normalization
- MySQL8.0.11版本的新增特性介绍
- python多线程并发实例及其优化