2013-02-16 23 views
0

我寫了一些div的插件。 textboxdiv s的類,deactivateTextBox()是插件。jQuery每個()重寫?

我需要deactivate頁面上的所有文本框。以下兩段代碼是否都這樣做?而第二個更有效率?

  1. 代碼:

    $(".textbox").each(function(){ 
        $(this).deactivateTextBox(); 
    }); 
    
  2. $(".textbox").deactivateTextBox();

+2

這取決於如何實現'deactivateTextBox'函數。但第二種風格應該由所有正確編寫的jQuery插件支持。 (另請參閱:[jQuery隱式和顯式循環](http://www.elijahmanor.com/2013/01/yo-dawg-i-herd-you-like-loops-so-jquery.html)) – DCoder 2013-02-16 16:27:34

回答

5
  1. 是的,他們都做同樣的事情。

  2. 是的,第二個應該更有效,因爲前者獲取所有元素,將原始DOM元素傳遞到循環,然後用jQuery對象重新包裝元素。