2009-12-01 84 views
2

繼續問題 https://stackoverflow.com/questions/1452380/good-jquery-interview-questions-closedjQuery()函數是做什麼的?

我有一個後續問題。 jQuery()函數是做什麼的? (這裏有四個答案;主題應該至少描述選擇器和元素設置模式)

我試着用谷歌搜索,但無法得到明確的答案。

感謝您提前提供任何幫助。

+0

在* core.js的源代碼,看看*(http://github.com/jquery/jquery/blob/master/src/core.js) 。 – Gumbo

+0

* jQuery()函數不做什麼?不要忘記'$(Number n)'(讓n杯茶)和'$($ KITCHEN_SINK)'。 (我個人非常不喜歡這個模糊的界面。) – bobince

回答

1

jQuery函數可以處理多種類型的輸入的:

  • $("")$(null),或$(undefined)
  • $(DOMElement)
  • $(html) - >$(array)
  • $("#id")
  • $("TAG")
  • $(expr, $(...))
  • $(expr, context)
  • $(function)

看一看的source code of jQuery and jQuery.fn.init尊重明白這些是如何處理的。

1

它做不同的事情取決於你傳遞給它什麼:

jQuery(String query [, DOMElement context]) 
jQuery(String query [, jQueryResultSet context]) 

這將讀取的字符串作爲查詢(例如:#foo > .bar a)。如果指定,它將在context的上下文中運行,否則將從document中獲取。

jQuery(DOMElement node) 

這將節點轉換爲包含該節點的jQuery結果集。這主要用於當你有一個元素的引用(例如:在一個事件處理程序中)並且你希望對它執行jQuery函數時。

jQuery(Function readyHandler) 

這就是一個快捷方式:

jQuery(document).ready(Function readyHandler) 

運行所有的jQuery函數一旦已加載該文件是如此普遍,加入這個快捷方式。

jQuery('') 
jQuery(null) 

這選擇文件。