2013-03-05 16 views
0

這是什麼符號的含義:不同的jQuery的事件綁定方式

$("#linka").click(function() { 

    // some codes 

}).fancybox({ 

    // some options 

}); 

那是什麼和這些代碼之間的區別:

$("#linka").click(function() { 

    // some codes 

}); 

$("#linka").fancybox({ 

    // some options 

}); 

謝謝。

+2

你應該看看「方法鏈接」。 – 2013-03-05 11:16:04

回答

1

最終結果將是相同的,但第二個代碼段有一個不必要的調用jQuery函數重新選擇元素。大多數jQuery方法返回一個jQuery對象,它有相同或更新的一組元素,允許其他jQuery方法事後調用。

它被稱爲方法鏈,並允許您選擇一次元素並使用多種方法與它們交互。

1

使用jQuery,您可以鏈接方法,而不必每次重新定義選擇器。上述兩個代碼示例都完全相同。第一種方法只是省略了對jQuery函數的不必要的調用。

1

對於這兩種方法你都會得到相同的結果。 鏈式方法概念在這裏用方法一應用。在這裏你不必再次聲明選擇器。

在方法二中,您聲明瞭選擇器兩次。鏈式方法只允許您不要一次又一次地聲明選擇器。您可以使用鏈式方法綁定儘可能多的方法。想象您希望懸停方法適用於相同的選擇器。傳統上,你會申報3種方法有相同的選擇三次在them.using鏈方法:

$("#linka").click(function() { 

// method1 

}).fancybox({ 

// method2 

}).hover(function(){//method3 
},function(){ 
});