2011-04-20 53 views
2

我真的想知道下面的代碼行的jQuery做:Jquery Change()和One()函數?

$('input', f).add('textarea', f).add('select', f).change(enable).one('blur', function() { 

//commands go here 

}); 

可以請人向我解釋的第一行代碼?

回答

5

這條線需要一些其他jQuery對象,f內的每個inputtextarea,並select元素找出所有這些命令的目的,並綁定一個更改事件處理程序,這是一個叫做enable的函數。然後,它將一個事件掛接到最多隻能執行一次的那些對象的onblur方法。

行:

$('input', f).add('textarea', f).add('select', f) 

實際上只是相當於:

$('input, textarea, select', f) 

其中一些範圍內選擇所有這些元素的結合,f。然後,請查閱文檔change()one()以獲取完整說明。

1
  1. $('input', f) - 找到的f
  2. .add('textarea', f).add('select', f)環境中的所有<input/>元素添加其他元素來首次匹配在f
  3. .change(enable)背景下重新設置註冊.change()處理程序jQuery對象中的所有元素(input,textarea和select)
  4. .one("blur", function(){})將一個模糊處理程序綁定到jQuery對象中的每個元素。