2010-11-05 79 views

回答

4

它將第一個參數中指定的搜索限制在this對象的上下文中。

只會選擇符合指定要求的this的子女。沒有上下文,搜索將適用於整個文檔。

docs

jQuery的(選擇器,[上下文])

上下文 DOM元素,文檔,或jQuery來作爲上下文使用

+0

應該說'對這個對象,它的兒童' – 2010-11-05 10:52:19

+0

@Coronatus是的,澄清。 – 2010-11-05 10:52:34

+0

'''' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *看起來像孩子,這裏有一個簡單的演示:http://www.jsfiddle.net/nick_craver/C4Unc/ – 2010-11-05 11:02:18

0

作爲this關鍵字是當前對象,它取決於代碼的放置位置。如果您指定了第二個參數,則將其用作搜索的上下文,即它只會查找該上下文中的元素。

如果您自己使用它,thiswindow相同,因此它與$('span:visible:first', window)相同。

如果您在事件處理函數中使用它,則this是該事件觸發的元素,因此它只會在該元素內搜索匹配項。

+0

稍作修改:上下文默認爲'document'而不是'window',這在後面的鏈中使用'.context'時可能很重要。 – 2010-11-05 11:09:51

+0

@Nick Craver:對,我在代碼中添加了'window',以便它完全等效。 – Guffa 2010-11-05 13:19:38

1

可能扭轉這將是最簡單的解釋,it gets turned into this

$(this).find('span:visible:first'); 

所以它的使用.find()讓你'span:visible:first'選擇器匹配的this所有後代(不管這個元素)。