Jquery是什麼?

Jquery是什麼?

2015/06/10 網路技術交流

jquery是一個優秀的Javascript程式庫。它是最輕便的的js程式庫,相容於CSS3語法,也相容各種瀏覽器(IE 6.0+,火狐1.5+, Safari 2.0+, Opera 9.0+),但jQuery2.0及後續版本將不再支持IE6/7 /8瀏覽器。jQuery可以讓使用戶能簡單的處理HTML(標準標記語言下的一個應用)、動畫效果,並且方便的為網站提供AJAX交換。jQuery有一個比較大的優勢是,文建說明很完全,而且各種應用也敘述的很詳細,同時還有許多完整的插件可供使用。jQuery能夠使用戶的html頁面保持代碼和html內容分離,也就是說,不用再在html裡面插入一堆js來命令,只需要定義id即可。

jQuery是一個相容多瀏覽器的javascript程式庫,核心理念是write less,do more(寫更少,做更多)。jQuery在2006年1月由美國人John Resig在紐約的barcamp發布,吸引了來自世界各地的眾多JavaScript高手加入,由Dave Methvin率領團隊進行開發。如今,jQuery已經成為最流行 ​​的javascript程式庫,在世界前10000個訪問最多的網站中,有超過55%在使用jQuery。jQuery是免費公開的,使用MIT許可協議。jQuery的語法設計可以使開發者更加方便,例如操作文建目標、選擇DOM元素、製作動畫效果、事件處理、使用Ajax以及其他功能。除此以外,jQuery提供API讓開發者編寫插件。其模塊化的使用方式使開發者可以很輕鬆的開發出功能強大的靜態或動態網頁。

jQuery,顧名思議,也就是JavaScript和查詢(Query),即是輔助JavaScript開發的程式庫。

jquery的特點:

  1. JQuery核心js文件才幾十kb,不會影響頁面加載速度。與Extjs相比要輕便的多。
  2. 豐富的DOM選擇器(CSS1~3 + XPath)
    JQuery的選擇器用起來很方便,好比要找到某個dom對象的相鄰元素js可能要寫好幾行代碼,而JQuery一行代碼就搞定了,再比如要將一個表格的隔行變色,JQuery也是一行代碼搞定。
  3. 程式撰寫
    JQuery的程式操作可以把多個操作寫在一行代碼裡,更加簡潔。
  4. 事件、樣式、動畫支持
    JQuery還簡化了js操作css的代碼,並且代碼的可讀性也比js要強。
  5. Ajax操作支持
    JQuery簡化了AJAX操作,後台只需返回一個JSON格式的字符串就能完成與前台的通信。
  6. 跨瀏覽器兼容
    JQuery基本兼容了現在主流的瀏覽器,不用再為瀏覽器的兼容問題而傷透腦筋。
  7. 插件擴展開發
    JQuery有著豐富的第三方的插件,例如:樹形菜單、日期元件、圖片切換插件、彈出窗口等等基本前台頁面上的組件都有對應插件,並且用JQuery插件做出來的效果很炫,並且可以根據自己需要去改寫和封裝插件,簡單實用。
  8. 可擴展性強
    JQuery提供了擴展接口:JQuery.extend(object),可以在JQuery的命名空間上增加新函數。JQuery的所有插件都是基於這個擴展接口開發的。

​jquery的優點:

  1. jQuery實現腳本與頁面的分離
    在HTML代碼中,我們還經常看到類似這樣的代碼:<form id="myform" onsubmit=return validate();">即使validate()函數可以被放置在一個外部文件中,實際上我們依然是把頁面與邏輯和事件混雜在一起。jQuery讓你可以將這兩部分分離。借助於jQuery,頁面代碼將如下所示:<form id="myform">接下來,一個單獨的JS文件將包含以下事件提交代碼: $("myform").submit(function() {   ...your code here   )}  這樣我們可以實現靈活性非常強的清晰頁面代碼。 jQuery讓JavaScript代碼從HTML頁面代碼中分離出來,就像數年前CSS讓樣式代碼與頁面代碼分離開一樣。

  2. 最少的代碼做最多的事情
    最少的代碼做最多的事情,這是jQuery的口號,而且名副其實。使用它的高級selector,開發者只需編寫幾行代碼就能實現令人驚奇的效果。開發者無需過於擔憂瀏覽器差異,它除了還完全支持Ajax,而且擁有許多提高開發者編程效率的其它抽象概念。jQuery把JavaScript帶到了一個更高的層次。以下是一個非常簡單的示例: $("p.neat").addClass("ohmy").show("slow");通過以上簡短的代碼,開發者可以遍歷“neat”類中所有的<p>元素,然後向其增加“ohmy”類,同時以動畫效果緩緩顯示每一個段落。開發者無需檢查客戶端瀏覽器類型,無需編寫循環代碼,無需編寫複雜的動畫函數,僅僅通過一行代碼就能實現上述效果。

  3. 性能
    在大型JavaScript框架中,jQuery對性能的理解最好。儘管不同版本擁有眾多新功能,其最精簡版本只有18KB大小,這個數字已經很難再減少。jQuery的每一個版本都有重大性能提高。本篇文章講的是jQuery未經過任何優化的原始速度。如果將其與新一代具有更快JavaScript引擎的瀏覽器(如火狐3和谷歌Chrome)配合使用,開發者在創建富體驗Web應用時將擁有全新速度優勢。

  4. 它是一個“標準”
    之所以使用引號,是以為jQuery並非一個官方標準。但是業內對jQuery的支持已經非常廣泛。谷歌不但自己使用它,還提供給用戶使用。另外戴爾、新聞聚合網站Digg、WordPress、Mozilla和許多其它廠商也在使用它。微軟甚至將它整合到Visual Studio中。如此多的重量級廠商支持該框架,用戶大可以對其未來放心,大膽的對其投入時間。

  5. 插件
    基於jQuery開發的插件目前已經有大約數千個。開發者可使用插件來進行表單確認、圖表種類、字段提示、動畫、進度條等任務。jQuery社區已經成長為一個生態系統。這一點進一步證明了上一條理由,它是一個安全的選擇。而且,jQuery正在主動與“競爭對手”合作,例如Prototype。它們似乎在推進JavaScript的整體發展,而不僅僅是在圖謀一己之私。

  6. 節省開發者學習時間
    當然要想真正學習jQuery,開發者還是需要投入一點時間,尤其是如果你要編寫大量代碼或自主插件的話,更是如此。但是,開發者可以採取“各個擊破”的方式,而且jQuery提供了大量示例代碼,入門是一件非常容易的事情。我建議開發者在自己編寫某類代碼前,首先看一下是否有類似插件,然後看一下實際的插件代碼,了解一下其工作原理。簡而言之,學習jQuery不需要開發者投入太多,就能夠迅速開始開發工作,然後逐漸提高技巧。

  7. 讓JavaScript編程變得有趣
    我發現使用jQuery是一件充滿樂趣的事情。它簡潔而強大,開發者能夠迅速得到自己想要的結果。它解決了許多JavaScript問題和難題。我過去曾討厭JavaScript編程,但現在卻非常喜歡它。通過一些基礎性的改進,開發者可以真正去思考開發下一代Web應用,不再因為語言或工具的差勁而煩惱。我相信它的“最少的代碼做最多的事情”口號。

jquery的缺點:

  1. 不能向後兼容-每一個新版本不能兼容早期的版本。舉例來說,有些新版本不再支持某些selector,新版jQuery卻沒有保留對它們的支持,而只是簡單的將其移除。這可能會影響到開發者已經編寫好的代碼或插件。
  2. 插件兼容性-與上一點類似,當新版jQuery推出後,如果開發者想升級的話,要看插件作者是否支持。通常情況下,在最新版jQuery版本下,現有插件可能無法正常使用。開發者使用的插件越多,這種情況發生的機率也越高。我有一次為了升級到jQuery 1.3,不得不自己動手修改了一個第三方插件。
  3. 在同一頁面上使用多個插件時,很容易碰到衝突現象,尤其是這些插件依賴相同事件或selector時最為明顯。這雖然不是jQuery自身的問題,但卻又確實是一個難於調試和解決的問題。
  4. jQuery的穩定性-它沒有讓我的瀏覽器崩潰,我這兒指的是其版本發布策略。jQuery 1.3版發布後僅過數天,就發布了一個漏洞修正版1.3.1。他們還移除了對某些功能的支持,可能會影響許多代碼的正常運行。我希望類似修改不要再出現。
  5. 在大型框架中,jQuery核心代碼庫對動畫和特效的支持相對較差。但是實際上這不是一個問題。目前在這方面有一個單獨的jQuery UI項目和眾多插件來彌補此點。 如果你還在猶豫是否要學習一個JavaScript框架,並困惑於選擇哪一個框架,那麼我推薦你選擇jQuery。這並非說其它框架不好,只是jQuery可能是最穩妥和最具回報性的選擇。

jquery的使用方法:

  1. JQuery選擇器
    選擇網頁元素jQuery的基本設計和主要用法,就是"選擇某個網頁元素,然後對其進行某種操作"。這是它區別於其他函數庫的根本特點。使用jQuery的第一步,往往就是將一個選擇表達式,放進構造函數jQuery()(簡寫為$),然後得到被選中的元素。
  2. 改變結果集
    如果選中多個元素,jQuery提供過濾器,可以縮小結果集;有一些時候,我們需要從結果集出發,移動到附近的相關元素,jQuery也提供了在DOM樹上的移動方法。
  3. 程式操作
    選中網頁元素以後,就可以對它進行某種操作。jQuery允許將所有操作連接在一起,以鏈條的形式寫出來。這是jQuery最令人稱道、最方便的特點。它的原理在於每一步的jQuery操作,返回的都是一個jQuery對象,所以不同操作可以連在一起。
  4. 元素的操作:取值和賦值
    操作網頁元素,最常見的需求是取得它們的值,或者對它們進行賦值。jQuery使用同一個函數,來完成取值(getter)和賦值(setter)。到底是取值還是賦值,由函數的參數決定。需要注意的是,如果結果集包含多個元素,那麼賦值的時候,將對其中所有的元素賦值;取值的時候,則是只取出第一個元素的值(.text()例外,它取出所有元素的text內容)。
  5. 元素的操作:移動-如果要移動選中的元素,有兩種方法:一種是直接移動該元素,另一種是移動其他元素,使得目標元素達到我們想要的位置。
  6. 元素的操作:複製、刪除和創建複製元素使用.clone()。刪除元素使用.remove()和.detach()。兩者的區別在於,前者不保留被刪除元素的事件,後者保留,有利於重新插入文檔時使用。清空元素內容(但是不刪除該元素)使用.empty()。
  7. 工具方法
    除了對選中的元素進行操作以外,jQuery還提供一些工具方法(utility),不必選中元素,就可以直接使用。如果你懂得Javascript語言的繼承原理,那麼就能理解工具方法的實質。它是定義在jQuery構造函數上的方法,即jQuery.method(),所以可以直接使用。而那些操作元素的方法,是定義在構造函數的prototype對像上的方法,即jQuery.prototype.method(),所以必須生成實例(即選中元素)後使用。如果不理解這種區別,問題也不大,只要把工具方法理解成,是像javascript原生函數那樣,可以直接使用的方法就行了。
  8. 事件操作
    jQuery可以對網頁元素綁定事件。根據不同的事件,運行相應的函數。
  9. 特殊效果
    jQuery允許對象呈現某些特殊動畫效果。 與JavaScript相比,jQuery的語法更加簡單。通過jQuery,可以很容易地瀏覽文檔、選擇元素、處理事件以及添加效果等,同時還允許開發者定制插件。 優點:  jQuery消除了JavaScript跨平台兼容問題。 相比其他JavaScript和JavaScript庫,jQuery更容易使用。 jQuery有一個龐大的庫/函數。 jQuery有良好的文檔和幫助手冊。 jQuery支持AJAX。缺點:  由於不是原生JavaScript語言,理解起來可能會受到限制。

項目中需要包含jQuery庫文件。如果包含多個版本的jQuery庫,可能會發生衝突。

 

 

< 最好的免費圖片網站 Best Free Stock Photo Sites
設置您的網站網址前的LOGO小圖標 >