jQuery課程介紹
什么是jQuery
jQuery是一套Javascript腳本庫(kù). 在我的博客中可以找到"Javascript輕量級(jí)腳本庫(kù)"系列文章. Javascript腳本庫(kù)類(lèi)似于.NET的類(lèi)庫(kù), 我們將一些工具方法或?qū)ο蠓椒ǚ庋b在類(lèi)庫(kù)中, 方便用戶(hù)使用.
注意jQuery是腳本庫(kù), 而不是腳本框架. "庫(kù)"不等于"框架", 比如"System程序集"是類(lèi)庫(kù),而"ASP.NET MVC"是框架. jQuery并不能幫助我們解決腳本的引用管理和功能管理,這些都是腳本框架要做的事.
腳本庫(kù)能夠幫助我們完成編碼邏輯,實(shí)現(xiàn)業(yè)務(wù)功能. 使用jQuery將極大的提高編寫(xiě)javascript代碼的效率, 讓寫(xiě)出來(lái)的代碼更加優(yōu)雅, 更加健壯. 同時(shí)網(wǎng)絡(luò)上豐富的jQuery插件也讓我們的工作變成了"有了jQuery,天天喝茶水"--因?yàn)槲覀円呀?jīng)站在巨人的肩膀上了.
創(chuàng)建一個(gè)ASP.NET MVC項(xiàng)目時(shí), 會(huì)發(fā)現(xiàn)已經(jīng)自動(dòng)引入了jQuery類(lèi)庫(kù). jQuery幾乎是微軟的御用腳本庫(kù)了!完美的集成度和智能感知的支持,讓.NET和jQuery天衣無(wú)縫結(jié)合在一起!所以用.NET就要選用jQuery而非Dojo,ExtJS等.
1)jQuery 是一套Javascript腳本庫(kù),注意 jQuery 是腳本庫(kù),而不是腳本框架。"庫(kù)"不等于"框架"。jQuery 并不能幫助我們解決腳本的引用管理和功能管理,這些都是腳本框架要做的事。
腳本庫(kù)能夠幫助我們完成編碼邏輯,實(shí)現(xiàn)業(yè)務(wù)功能。使用 jQuery 將極大的提高編寫(xiě)javascript代碼的效率, 讓寫(xiě)出來(lái)的代碼更加優(yōu)雅, 更加健壯。
2)使用這些功能函數(shù),能夠幫助我們快速完成各種功能,而且會(huì)讓我們的代碼異常簡(jiǎn)潔。
3)javascript腳本在不同瀏覽器的兼容性一直是 Web 開(kāi)發(fā)人員的噩夢(mèng),比如在 jQuery 中的 Event 事件對(duì)象已經(jīng)被格式化成所有瀏覽器通用的,從前要根據(jù)event獲取事件觸發(fā)者, 在 ie 下是event.srcElements 而 ff 等標(biāo)準(zhǔn)瀏覽器下是event.target。 jQuery 則通過(guò)統(tǒng)一event對(duì)象,讓我們可以在所有瀏覽器中使用event.target獲取事件對(duì)象。
4)jQuery 可以實(shí)現(xiàn)比如漸變彈出,圖層移動(dòng)等動(dòng)畫(huà)效果,讓我們獲得更好的用戶(hù)體驗(yàn)。
5)大部分開(kāi)發(fā)人員對(duì)于javascript存在錯(cuò)誤的認(rèn)識(shí),比如在頁(yè)面中編寫(xiě)加載時(shí)即執(zhí)行的操作 DOM 的語(yǔ)句,在 HTML 元素或者document對(duì)象上直接添加onclick屬性,不知道onclick其實(shí)是一個(gè)匿名函數(shù)等等。這樣的程序是不健壯的。比如"在頁(yè)面中編寫(xiě)加載時(shí)即執(zhí)行的操作 DOM 的語(yǔ)句",當(dāng)頁(yè)面代碼很小用戶(hù)加載很快時(shí)沒(méi)有問(wèn)題, 當(dāng)頁(yè)面加載稍慢時(shí)就會(huì)出現(xiàn)瀏覽器"終止操作"的錯(cuò)誤。