2011-06-07 84 views
7

我經常看到這是一個插件的第一行:

$this = $(this); 

這只是求效益,以避免讓每一次的jQuery對象?

+3

簡答:是的。 – Gumbo 2011-06-07 07:06:43

回答

6

要緩存jQuery對象,而不是每次需要時都要實例化它。

2

正如上面的答案說,它會緩存對象 - 種。

如果您致電$(this) jQuery將在DOM中搜索,直至找到this -element。如果您想對元素進行很多更改,將保存對元素的引用將會更快。現在

$this = $(this); 

元素被保存爲$this variabel,如果你想再次做的東西給它,你只需要使用variabel。

$this.hide(); //hides the element. 
+0

那麼,'什麼'? – 2011-06-07 07:14:53

+0

@Tguguen。術語緩存是一個小技巧錯誤(至少在我看來)。它會保存對該對象的引用。這將作爲中間人,消除每次訪問元素時搜索DOM的需求。當我在緩存時,我正在考慮存儲。但我想說你「緩存元素」並不是錯誤的,這不是我的方式來描述它。 – Anders 2011-06-07 07:20:27

相關問題