2014-09-04 25 views
5

jQuery中的$({})是什么意思?我在这个问题上看到了对这个问题的回应:Possible to fade out div border?将空对象传递给jQuery的目的是什么?

他用$({alpha:1}).animate({alpha:0})这是如何影响DOM的?

+2

它创建一个jQuery对象。在这种情况下,它将是一个空的对象。他所做的是错误的。该代码不指向DOM对象。而且你只能动画DOM对象。 – 2014-09-04 15:09:23

+0

@true我不会说他错了,这是一个让动画不能动画的属性动画的技巧! – 2014-09-04 15:22:48

+0

@ Karl-AndréGagnon我同意说他错了,这在政治上是不正确的。 – 2014-09-04 15:41:17

回答

6

jQuery中的$({})是什么意思?

这意味着“传递一个空对象到jQuery并从中创建一个jQuery对象”。

这是如何影响DOM和字面上会发生什么?

它根本不影响DOM,它只是随着时间改变对象{alpha:1}的属性值。

如在documentation中所述,您可以在普通对象上使用一些jQuery方法。虽然它似乎有点过时,因为animate没有在那里列出。但它确实有效:

> $({alpha:1}).animate({alpha:0}, {step: function() { console.log(this.alpha); }}) 
1 
0.9965342284774632 
0.9870866934849247 
0.9730426794137726 
0.9524135262330098 
0.9242551074907518 
0.8926584654403724 
0.8563192594626027 
... 
相关问题