手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >实例讲解JQuery中this和$(this)区别
实例讲解JQuery中this和$(this)区别
摘要:平时很少在jquery中用到this。查看代码时发现用到了,就调试出this的值,心想原来如此。还是挺有用的。这里总结一下this与$(th...

平时很少在jquery中用到this。查看代码时发现用到了,就调试出this的值,心想原来如此。还是挺有用的。这里总结一下this与$(this)的区别和使用。

$(this)生成的是什么?

$()生成的是什么呢?实际上$()=jquery(),就是说返回的是一个jquery的对象。

通常我们为了简便直接使用$()。实际上,该函数省略了一个参数context。根据选择器选取匹配的对象即$(selector, context),以jQuery包装集的形式返回。

context可以是Dom对象集合或jQuery包装集,传入则表示要从context中选择匹配的对象,不传入则表示范围为文档对象(即页面全部对象),即$(selector)=$(selector,document)。

this指的是,调用函数的那个html对象。

例子:

复制代码 代码如下:

$("#textbox").hover(

function() {

this.title = "Test";

},

fucntion() {

this.title = "OK”;

}

);

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

复制代码 代码如下:

$("#textbox").hover(

function() {

$(this).title = "Test";

},

function() {

$(this).title = "OK";

}

);

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

结论:

this,表示当前的上下文对象是一个html对象,可以调用html对象所拥有的属性和方法。

$(this),代表的上下文对象是一个jquery的上下文对象,可以调用jquery的方法和属性值。

实例(选项卡):

复制代码 代码如下:

tabs($("#nav a"), $(".content"));

function tabs(tab, content){

content.hide();

content.eq(0).show();

tab.click(function(){

var index = tab.index(this);

tab.removeClass("current");

$(this).addClass("current");

content.hide();

content.eq(index).animate({opacity:'show'}, 200);

});

}

【实例讲解JQuery中this和$(this)区别】相关文章:

常用参考资料(手册)下载或者链接

JavaScript中用于生成随机数的Math.random()方法

灵活的理解JavaScript中的this指向

JavaScript中的this,call,apply使用及区别详解

详解AngularJS中的http拦截

JavaScript中的this机制

JQuery中clone方法复制节点

JQuery中DOM事件冒泡实例分析

JQuery中DOM事件合成用法实例分析

两边静止的广告条

精品推荐
分类导航