2013-06-04 33 views
7

是他們的window本機屬性如果是這樣,爲什麼叫jQuery的,肯定的jQuery JavaScript之後來到

編輯:我一直在尋找通過的jquery.js,發現這使我想知道他們的意思,究竟這兩條線。如果不會window.JQuery是空的,因爲JQuery不是窗口的變量?

_jQuery = window.jQuery, 

_$ = window.$, 
+0

我會檢查這篇文章瞭解更多關於基本的jQuery。 http://jqfundamentals.com/chapter/jquery-basics。希望有所幫助! –

+0

http://stackoverflow.com/questions/10896749/what-does-function-function-window-jquery-do – mutex36

回答

8

我會拉從文章中,我聯繫到上述評論:

如JavaScript的基礎知識討論部分,JavaScript中的有效名稱可以是任何東西,只要它們不以數字開頭並且不包含連字符。所以,上面的代碼中的$只是jQuery函數的一個更短,更方便的名稱;事實上,在jQuery的源代碼,你會接近尾聲找到這樣的:

// Expose jQuery to the global object 
window.jQuery = window.$ = jQuery; 

當你調用$()函數和選擇傳遞給它,你創建一個新 jQuery對象。當然,在JavaScript中,函數也是對象 ,所以這意味着$(和jQuery當然)具有屬性和方法。例如,您可以參考$ .support屬性獲取關於當前瀏覽器環境支持的 信息,並且您的 使用$ .ajax方法發出AJAX請求。

基本上,jQuery(當你包含它)在窗口$和window.jquery中創建函數。然後,爲了方便起見,它將$等於兩者都設爲$。

+0

所以要在JavaScript中聲明一個全局變量,你必須做一些類似'window.myVariableName'的事情? – code511788465541441

+2

全局變量可以聲明爲myVariable。它被綁定到window.myVariable,並且可以使用myVariable和window.myVariable來訪問 –

4

jQuery是一個JavaScript庫

jQuery是一個快速,小巧,功能豐富的JavaScript庫。它使 像HTML文檔遍歷和操縱,事件處理, 動畫和Ajax等事情變得更簡單,使用易於使用的API,在多種瀏覽器上運行 。通過多功能性和可擴展性的組合,jQuery改變了數百萬人編寫JavaScript的方式。 http://jquery.com/

一旦你包括頁面上的腳本,它會創建的對象上全球範圍內(窗口)jQuery$。這不是本地的。

這些

_jQuery = window.jQuery,  
_$ = window.$, 

是在覆蓋的情況下,內部映射。您可以使用該功能.noConflictprototype和其他庫

恢復 window.$預防衝突的前值
2

window是默認/ global object。無論何時您assign a value,並沒有明確說明將要附加到的對象,那麼它將被分配給全局對象的屬性,除非有一個局部變量將其分配給第一個(參見3.b節。的PutValue);

任何全球性將是它的財產。