嘗試通過執行Code School CoffeeScript課程來獲取CoffeeScript和jQuery。
其中使用的摘錄是$("<li>" + name + "</li>")
。我設法弄清楚$
是jQuery
(對吧?)的別名,所以我想這意味着我們用一個字符串調用jQuery函數(name
是一個字符串,被兩個文字包圍)。
那麼...... jQuery
函數自己做什麼?試着看着api.jquery.com,很難找出答案。謝謝!
嘗試通過執行Code School CoffeeScript課程來獲取CoffeeScript和jQuery。
其中使用的摘錄是$("<li>" + name + "</li>")
。我設法弄清楚$
是jQuery
(對吧?)的別名,所以我想這意味着我們用一個字符串調用jQuery函數(name
是一個字符串,被兩個文字包圍)。
那麼...... jQuery
函數自己做什麼?試着看着api.jquery.com,很難找出答案。謝謝!
在這個例子中,你使用jQuery來創建一個DOM元素。
一個<li>
一些(文字我假設)是在變量name
如果串作爲參數傳遞給$(),jQuery的檢查 字符串看看它是否看起來像HTML(即,它在字符串中有某處 )。如果不是,則如上所述,該字符串被解釋爲選擇器 表達式。但是,如果該字符串看起來像是一個 HTML片段,那麼jQuery將嘗試通過HTML創建新的DOM元素,如 所述。然後創建並返回一個jQuery對象,將 引用到這些元素。
用於與jQuery創建DOM元素的結構爲:
$(html, props)
查閱這些jQuery Docs閱讀更多關於jQuery選擇。
HTML:一個字符串定義單個的,獨立的,HTML元素(例如 或)。
道具:調用 新創建的元素的屬性,事件和方法的映射。
正如我們在您的示例中所見,我們只能通過html。 $("<li>" + name + "</li>")
您正在將字符串傳遞給jQuery "<li>" + name + "</li>"
這實際上是將3 string
連接起來形成1 string
。這是傳遞到如果一個字符串 jQuery的功能,它解析並chaeck
:它會被解析爲複雜manuplation圓頂選擇器ID,等級的基礎上的Selec元素,和更復雜的選擇
如果其對象:選擇與該對象相關的dom。
如果這個(JavaScript對象):它被轉換爲jQuery對象
*它實際上是被連接成一個字符串三個字符串「由兩個文字環繞」。您將一個表示html的字符串傳遞給jQuery,jQuery將其轉換爲html片段,類似於執行'var li = document.createElement(「li」)。innerHTML = name;'儘管jQuery可能直接在整個字符串中使用innerHTML取決於字符串的複雜程度。 –