資源描述:
《使用jQuery,第 2 部分 構(gòu)建未來的 Web 應(yīng)用程序》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、使用jQuery,第2部分:?構(gòu)建未來的Web應(yīng)用程序事件、屬性和CSS2008年10月10日這個關(guān)于?jQuery系列文章?的第二篇介紹了如何將更多的交互添加到Web站點(diǎn),以創(chuàng)建動態(tài)的富Internet應(yīng)用程序(RIA)。通過本文,了解jQuery如何綜合利用用戶交互生成的事件、來自Web站點(diǎn)的信息,以及更改應(yīng)用程序外觀的功能(無需重新加載),來輕松迅速地創(chuàng)建RIA。簡介這6個月以來,JQuery受歡迎的指數(shù)迅速攀升,現(xiàn)已成為Web開發(fā)人員首選的JavaScript庫。與此同時,人們對富Internet應(yīng)用程序(RichInternetApplication,RIA)的應(yīng)用和需求
2、也在迅速增長,并期待用基于瀏覽器的應(yīng)用程序代替桌面應(yīng)用程序。無論是電子表格,還是薪水冊和電子郵件應(yīng)用程序,現(xiàn)在都在瀏覽器中再現(xiàn)了類似于桌面的體驗。隨著這些應(yīng)用程序數(shù)量的增多和功能的日益復(fù)雜,JavaScript庫將會變得越來越重要,因為它是構(gòu)建這些應(yīng)用程序的堅實(shí)基礎(chǔ)。JQuery將成為開發(fā)人員最佳選擇。本系列文章深入探索了jQuery,并提供了堅實(shí)的基礎(chǔ)。開發(fā)人員借助這個基礎(chǔ)就可以快速輕松地構(gòu)建自己的RIA。在?上一篇文章?中,您了解了jQuery的基礎(chǔ)知識,包括如何在開發(fā)環(huán)境中設(shè)置jQuery,以及它的核心函數(shù)是如何工作的。您看到了jQuery如何通過選擇和過濾方法來簡化搜索和查
3、找頁面元素,以及如何才能找到所需的元素。接下來,您還體驗了jQuery提供的遍歷搜索結(jié)果的各種方法,而且其中的很多函數(shù)與您在其他編程語言中接觸到的函數(shù)十分相似。最后,還介紹了一個示例小部件,即SelectAll/DeselectAll復(fù)選框,并看到了jQuery如何通過幾行代碼來構(gòu)建這個小部件。在本篇本章,通過更精彩的功能來進(jìn)一步擴(kuò)展您的jQuery知識,并向老的Internet應(yīng)用程序添加一些真正的“富”特性,使這個演示應(yīng)用程序成為富Internet應(yīng)用程序。我先向您展示jQuery如何處理事件。所謂事件就是指鼠標(biāo)單擊、突出顯示和拖動等。請注意,事件處理并不局限于按鈕,還包括處理
4、在任何div、span等上進(jìn)行的鼠標(biāo)單擊。接下來,我將討論如何獲取和設(shè)置Web頁面內(nèi)的對象的屬性。這包括如何從表單元素獲得文本、如何從div獲得innerHTML,以及如何確定哪個類附加到哪個元素上。最后,我將討論如何在無需重新加載頁面或調(diào)整外部樣式表的情況下修改頁面元素的CSS屬性。示例應(yīng)用程序在這個Web郵件應(yīng)用程序的額外小部件中包含了各種東西,展示了如何創(chuàng)建一個客戶端的富應(yīng)用程序,并且根據(jù)與頁面的交互來更改對象的顏色、大小和位置。(這些交互只限于客戶端—下一篇文章將會添加服務(wù)器端的交互)。通過本文,您將能夠掌握創(chuàng)建RIA所需的jQuery工具,并借此打動您的客戶。事件jQue
5、ry內(nèi)的Events模塊是向Web應(yīng)用程序添加交互性的第一步,因為事件通常是頁面上發(fā)生的事情的觸發(fā)器。正如我在簡介中提到的,您不應(yīng)該認(rèn)為事件只發(fā)生在Form元素—實(shí)際上,任何元素都能觸發(fā)事件,因此應(yīng)該充分利用這一點(diǎn)來更輕松地構(gòu)建定制的小部件,以及添加一些獨(dú)特卻又不局限于特定Form元素的交互。眾所周知,大多數(shù)事件都?基于Form元素。演示這些方法最好的方式就是使用它們。在開始深入研究可用的函數(shù)之前,一定要注意:Events模塊針對每個函數(shù)都遵循一種模式。每個事件函數(shù)都包含兩種形式:一個沒有任何參數(shù),一個包含一個函數(shù)作為參數(shù)。二者間的差異十分重要,而且這對各個函數(shù)都是一致的。沒有參數(shù)
6、的函數(shù)將實(shí)際激發(fā)該事件。換而言之,調(diào)用?click()?將實(shí)際導(dǎo)致該按鈕被單擊。在實(shí)際單擊該按鈕,或其?click()?函數(shù)被調(diào)用時,將會調(diào)用click(function)。是不是很困惑?這只是文字上的描述,舉例說明之后,您就會清楚了。清單1.jQueryEvent方法//makethe"myButton"click.Thiswillcausethebuttontoclickandanyactions//tiedtoitwilloccur-forexample,itcouldsubmitaform,orother//jQueryactionscouldbetiedtoit.$("#
7、myButton").click();//usejQuerytosetupwhatwillactuallyhappenwhenthe"myButton"is//actuallyclicked.$("#myButton").click(function(){$("#myDiv").toggle();});//AcommonpatterninjQuerywhensettingupactionsonapageistotriggerthe//actiontooccurinit