将空对象传递给jQuery的目的是什么?

5

$({}) 在 jQuery 中是什么意思?我在这个问题的victmo回答中看到了这个:可能淡出div边框?

他使用了 $({alpha:1}).animate({alpha:0}),这对 DOM 有什么影响,字面上会发生什么?


2
它创建了一个jQuery对象。在这种情况下,它将是一个空对象。他所做的是错误的。那段代码没有指向DOM对象。而你只能对DOM对象进行动画处理。 - Ryan
@true 我不会说他错了,这是一种将无法动画化的属性进行动画处理的技巧! - Karl-André Gagnon
@Karl-André Gagnon 我同意说他错了并不符合政治正确。 - Ryan
1个回答

6

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

它的意思是“将一个空对象传递给jQuery并从中创建一个jQuery对象”。

这会对DOM产生什么影响,字面上会发生什么?

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

您可以像文档中所解释的那样,在普通对象上使用一些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
...

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接