【jQuery点滴】jQuery方法总是返回jQuery对象

前几天看到一篇文章《14 Helpful jQuery Tricks, Notes, and Best Practices》感觉很不错,非常时候我这种入门级的人员,所以看懂一条翻译一条,

jQuery方法总是返回jQuery对象:

所以我们可以这样写(链式调用):

[code=”javascript”]

$someDiv.attr(‘class’,?’someClass’).hide().html(‘new?stuff’);

[/code]

为了美观易读也可以这样写:

[code=”javascript”]

$someDiv

.attr(‘class’,?’someClass’)

.hide()

.html(‘new?stuff’);

[/code]

再来看下面的例子:

[code=”javascript”]

var?someDiv?=?$(‘#someDiv’);

someDiv.hide();

[/code]

我们定义的一个元素将隐藏掉,我们可以将代码简化成:

[code=”javascript”]

var?someDiv?=?$(‘#someDiv’).hide();

[/code]

jquery这个特性可以减少我们遍历整个DOM的次数。我们就不用一次次的去遍历整个DOM。

当然还有一种写法,比如:

[code=”javascript”]

var?elem?=?$(‘#elem’);

elem.hide();

elem.html(‘bla’);

elem.otherStuff();

[/code]

虽然这种写法很难看,没使用点语法,但是从性能角度上说,他也是很优化的,因为他只遍历了一次dom,获取jq对象,并把值赋给了elem。在一些特殊的场合你也可以这么使用。

赞(0) 打赏
未经允许不得转载:WEB前端开发 » 【jQuery点滴】jQuery方法总是返回jQuery对象

评论 2

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #-49

    这就是jQuery的链式表达式,我之前写代码都是先绑定完了事件,然后再赋值给一个变量,以方便以后使用。
    我最近封装的代码方法,也学着return 个this用,也实现了链式调用函数的方式

    断桥残雪8年前 (2010-10-03)回复
  2. #-48

    var someDiv = $(‘#someDiv’);

    这种写法是错误的吧,既然返回的是对象,那么应当是这样

    var $someDiv=$(‘#someDiv’);

    小乐8年前 (2010-10-27)回复

前端开发相关广告投放 更专业 更精准

联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏