版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
?網頁設計與制作〔第二版〕?第8章網頁制作腳本語言8.1VBScript與JavaScript8.1.1VBScript與JavaScriptVBScript和JavaScript是目前比較流行的腳本語言,都可以用來建立交互式的Web應用程序。腳本語言是一種介于HTML和C++,VisualBasic等程序設計語言之間的語言。腳本語言通常是嵌入到HTML文檔中的,具有解釋執(zhí)行的特征。根據(jù)腳本程序被解釋執(zhí)行的地點的不同,可將它們分為客戶端腳本和效勞器端腳本,前者由瀏覽器負責解釋執(zhí)行,后者由Web效勞器負責解釋執(zhí)行。2023/1/122?網頁設計與制作〔第二版〕?8.2.2VBScript運算符與表達式1.算術運算2.連接運算3.關系運算符4.邏輯運算5.運算符的優(yōu)先級2023/1/125?網頁設計與制作〔第二版〕?8.2.3VBScript的根本語句1.選擇語句在VBScript中,實現(xiàn)選擇結構有兩種語句:If…Then…Else語句和Select…Case語句,這兩種語句在執(zhí)行時,先對條件進行判斷,然后根據(jù)條件執(zhí)行相應的腳本。If…Then…Else語句是雙分支選擇結構語句,Select…Case語句是多分支選擇結構語句。2023/1/126?網頁設計與制作〔第二版〕?〔1〕If…Then…Else語句形式1:If<條件>Then<語句組1>[Else<語句組2>]EndIf形式2:If<條件>Then<語句1>[Else<語句2>]2023/1/127?網頁設計與制作〔第二版〕?〔2〕SelectCase語句SelectCase<表達式>Case<表達式值列表1><語句1>[Case<表達式值列表2>]<語句2>……[CaseElse<語句n>]EndSelect2023/1/128?網頁設計與制作〔第二版〕?2.循環(huán)語句使用循環(huán)語句可以反復執(zhí)行某段腳本,直到滿足循環(huán)條件后才停止。在VBScript中,提供了4種循環(huán)語句:For…Next語句、Do…Loop語句、While…End語句和ForEach…Next語句?!?〕For…Next語句For<循環(huán)變量>=<初始值>To<終值>[Step<步長>][<語句>][ExitFor]Next[<循環(huán)變量>]2023/1/129?網頁設計與制作〔第二版〕?〔2〕While…Wend語句While<條件><語句組>Wend〔3〕Do…Loop語句形式1:形式2:DoWhile<條件>Do[<語句>][<語句>][ExitDo][ExitDo]LoopLoopWhile<條件>形式3:形式4:DoUntill<條件>Do[<語句>][<語句>][ExitDo][ExitDo]LoopLoopUntill<條件>2023/1/1210?網頁設計與制作〔第二版〕?8.2.4VBScript語句中的過程和事件處理在實際的編程過程中,將用于實現(xiàn)某一特定功能,而且相對集中的語句放在一個子程序中,稱為過程。在過程中的語句一般和其他過程中的語句或主程序〔相對于子程序而言〕中的語句沒有什么直接聯(lián)系。在VBScript中,過程被分為兩類:Sub過程和Function過程。1.Sub過程Sub過程,也稱為子過程。它是由一些功能實現(xiàn)相對集中的VBScript語句組成的。這些語句以Sub語句開頭,以EndSub語句結束。這些語句被執(zhí)行操作時并不返回任何數(shù)值,這一點與Function過程不同。2023/1/1211?網頁設計與制作〔第二版〕?2.Function過程Function過程又稱函數(shù)過程,它與Sub過程類似,也是由一系列VBScript語句組成,它以Function語句開頭,以EndFunction語句結束。Function過程在調用結束后,通過函數(shù)名返回一個值,這個值是在過程的語句中賦給函數(shù)名的,它的數(shù)據(jù)類型總是Variant。3.VBScript事件處理VBScript提供了3種事件處理的方式?!?〕通過事件過程來控制事件〔2〕用內聯(lián)代碼直接處理事件〔3〕用for和event屬性來處理事件8.2.5應用舉例2023/1/1212?網頁設計與制作〔第二版〕?8.3VBScript的函數(shù)
VBScript的函數(shù)種類很多,包括與數(shù)字運算有關的函數(shù),與字符串處理有關的函數(shù),數(shù)據(jù)類型轉換函數(shù)及日期與時間函數(shù)等。8.3.1數(shù)學運算函數(shù)
表8-4 數(shù)學運算函數(shù)及其功能函數(shù)功能函數(shù)功能Abs()返回一個數(shù)的絕對值Log()返回以e為底的對數(shù)Atn()返回反正切Sqn()返回一個數(shù)的符號Cos()返回余弦Sin()返回正弦Exp()返回e的方冪Sqr()返回一個數(shù)的平方根Fix()返回一個數(shù)的整數(shù)部分Tan()返回正切Int()返回不超過一個數(shù)的最大整數(shù)Round()對數(shù)值表達式進行四舍五入2023/1/1213?網頁設計與制作〔第二版〕?8.3.2字符串處理函數(shù)表8-5 字符串處理函數(shù)及其功能函數(shù)功能函數(shù)功能Len()求字符串的長度Left()從左邊截取字符串Lcase()將字符串中的所有字母變成小寫Right()從右邊截取字符串Ucase()將字符串中的所有字母變成大寫Mid()從指定位置處截取字符串Ltrim()去除字符串左邊的空格Space()產生指定數(shù)目的空格Rtrim()去除字符串右邊的空格String()產生指定數(shù)目的重復字符Trim()去除字符串兩邊的空格StrReverse()使字符串逆序輸出Replace()將字符串中指定的子串替換為另一子串InStr()在一個字符串中搜索匹配字符串的位置2023/1/1214?網頁設計與制作〔第二版〕?8.3.3數(shù)據(jù)類型轉換函數(shù)表8-6 數(shù)據(jù)類型轉換函數(shù)及其功能函數(shù)功能函數(shù)功能CBool()將表達式轉換為布爾子類型的數(shù)據(jù)CInt()將表達式轉換為整數(shù)類型的數(shù)據(jù)CByte()將表達式轉換為字節(jié)子類型的數(shù)據(jù)CSng()將表達式轉換為單精度子類型的數(shù)據(jù)CCur()將表達式轉換為貨幣子類型的數(shù)據(jù)CStr()將表達式轉換為字符串子類型的數(shù)據(jù)CDate()將表達式轉換為日期子類型的數(shù)據(jù)Oct()將數(shù)值轉換為表示八進制值的字符串CDbl()將表達式轉換為雙精度子類型的數(shù)據(jù)Hex()將數(shù)值轉換為表示十六進制值的字符串2023/1/1215?網頁設計與制作〔第二版〕?8.3.4日期時間函數(shù)表8-7 日期時間函數(shù)及其功能函數(shù)功能函數(shù)功能Year()從日期中提取年份Minute()從時間中提取分鐘Month()從日期中提取月份Second()從時間中提取秒數(shù)Day()從日期中提取日數(shù)DateValue()將字符串形式日期轉換成數(shù)值WeekDay()從日期中提取一周中的天數(shù)TimeValue()將字符串形式時間轉換成數(shù)值Hour()從時間中提取小時DateSerial()將整數(shù)形式日期轉換成數(shù)值TimeSerial()將整數(shù)形式時間轉換成數(shù)值Date返回當前系統(tǒng)日期Time返回當前系統(tǒng)時間Now返回當前系統(tǒng)的日期及時間2023/1/1216?網頁設計與制作〔第二版〕?8.3.5其他函數(shù)1.InputBoxInputBox(提示字符串[,窗口說明][,內容默認值][,對話框水平坐標][,對話框垂直坐標])2.MsgBox函數(shù)MsgBox(提示字符串[,按鈕][,窗口說明])2023/1/1217?網頁設計與制作〔第二版〕?表8-8 按鈕參數(shù)取值表組符號常數(shù)值意義第1組VbOkOnly0只顯示“確定”按鈕VbOkCancel1顯示“確定”及“取消”按鈕VbAbortRetryIgnore2顯示“終止”、“重試”、“忽略”按鈕VbYesNoCancel3顯示“是”、“否”及“取消”按鈕VbYesNo4顯示“是”及“否”按鈕VbRtryCancel5顯示“重試”及“取消”按鈕第2組VbCritical16顯示中止圖標(壞信息)VbQuestion32顯示問號圖標(有疑問)2023/1/1218?網頁設計與制作〔第二版〕?組符號常數(shù)值意義第2組VbExclamation48顯示驚嘆號圖標(警告)VbInformation64顯示i圖標(信息)第3組VbDefaultButton10第1個按鈕為默認VbDefaultButton2256第2個按鈕為默認VbDefaultButton3512第3個按鈕為默認VbDefaultButton4768第4個按鈕為默認第4組VbApplicationModal0應用程序強制返回;應用程序一直被掛起,直到用戶對消息框做出響應才繼續(xù)工作VbSystemModal4096系統(tǒng)強制返回;全部應用程序都被掛起,直到用戶對消息框做出響應才繼續(xù)工作續(xù)表2023/1/1219?網頁設計與制作〔第二版〕?表8-9 MsgBox函數(shù)的返回值符號常數(shù)返回值含義符號常數(shù)返回值含義VbOk1單擊“確定”按鈕VbIgnore5單擊“忽略”按鈕VbCancel2單擊“取消”按鈕VbYes6單擊“是”按鈕VbAbort3單擊“終止”按鈕VbNo7單擊“否”按鈕VbRetry4單擊“重試”按鈕2023/1/1220?網頁設計與制作〔第二版〕?8.4VBScript中的對象VBScript的對象是由一系列的屬性和方法構成的。VBScript支持3種類型的對象:內建對象、瀏覽器對象和用戶自定義對象。內建對象共有7種,即Dictionary對象、Drive對象、Err對象、File對象、FileSystemObject對象、Folder對象和TextStream對象。VBScript提供的創(chuàng)立用戶自定義對象功能為使用者提供了更廣闊的對象處理能力,自定義對象同樣也有其屬性和方法,并可在程序中像內建對象一樣使用。VBScript支持的瀏覽器對象,如Window和Document對象等,主要用于實現(xiàn)客戶端的功能。本節(jié)中主要介紹瀏覽器對象及它的應用。2023/1/1221?網頁設計與制作〔第二版〕?瀏覽器對象是一種層次結構〔見圖8-6〕,其中的每個對象可以被腳本引擎訪問。圖8-6瀏覽器對象模型2023/1/1222?網頁設計與制作〔第二版〕?8.4.1Window對象
在瀏覽器對象模型中,最頂層的對象是Window對象。Window對象表示瀏覽器的窗口,是其他對象的容器。Window對象的屬性和方法可以在腳本中直接訪問。
Window對象的屬性Window對象的方法Window對象提供了兩個事件,即OnLoad和OnUnload事件。OnLoad事件在頁面加載時觸發(fā),而OnUnload事件在頁面卸載時觸發(fā)。2023/1/1223?網頁設計與制作〔第二版〕?表8-11 Window對象的屬性屬性說明Name返回窗口的名稱,它是一個只讀屬性,在窗口生成時指定??梢杂?lt;a>標記和target屬性來指定窗口名稱,也可以用Window對象的Open方法打開窗口時指定名稱Parent返回當前窗口的父窗口對象。通過Parent屬性,可以訪問父窗口的屬性。例如,Alert"當前窗口的父窗口名是:"&Parent.NameTop返回表示最頂層窗口的Window對象Document返回當前窗口的Document對象,Document對象表示窗口中顯示的文檔Frames窗口中可以包含框架,框架通過Frames屬性訪問,它是一個對象數(shù)組。當前窗口中的第一個框架是Frames(0),第二個框架是Frames(1),依次類推Location返回當前窗口的Location對象。通過Location對象,可以訪問文檔的URL信息。當前窗口中文檔的URL是由Location對象的Href屬性給出的DefaultStatus返回或設置在瀏覽器狀態(tài)欄中顯示的默認信息。當瀏覽器的狀態(tài)欄不顯示其他信息時,將顯示這個信息Status設置或返回在瀏覽器狀態(tài)欄中顯示的信息History返回當前窗口的History對象的訪問2023/1/1224?網頁設計與制作〔第二版〕?表8-12 Window對象的方法方法說明Alert類似于MsgBox函數(shù),用于顯示一個警告消息框,但只有一個“確定”按鈕Cofirm用于顯示一個消息框,該消息框包含“確定”和“取消”按鈕。如果單擊“確定”按鈕,則返回True,否則返回FalsePrompt類似于InputBox函數(shù),用于提示用戶輸入數(shù)據(jù)Open打開一個已存在窗口,或者建立一個新窗口,并在其上顯示一個文檔,例如,以下語句打開一個名為“msw”的窗口,在其中顯示Microsoft網站的主頁并返回一個Window對象:NewWindow=Open"","msw"Close關閉一個打開的窗口,例如:NewWindow.CloseSetTimeOut設置一個計時器,用來在指定的時間后調用一個過程,時間以s為單位ClearTimeOut用來將指定的計時器復位Navigate用來在當前窗口中顯示新文檔,例如,以下語句通知瀏覽器鏈接到Micriosoft網站的主頁:Navigate""2023/1/1225?網頁設計與制作〔第二版〕?8.4.2Document對象
Document對象是指當前窗口或某個框架中顯示的HTML文檔。通過Document對象的屬性和方法,可以訪問當前加載的HTML頁面,控制頁面的外觀和內容。Document對象的屬性Document對象的方法2023/1/1226?網頁設計與制作〔第二版〕?表8-13 Document對象的屬性屬性說明LinkColor返回或設置文檔中超鏈接的顏色aLinkColor返回或設置文檔中激活鏈接的顏色。激活鏈接是用鼠標移到一個超鏈接上,按下鼠標鍵而尚未釋放時的一種狀態(tài)vLinkColor返回或設置已經訪問過的超鏈接的顏色bgColor返回或設置文檔的背景色fgColor返回或設置文檔的前景色AnchorsAnchor是一個對象,表示當前文檔中的錨。Anchor對象的Length屬性返回當前文檔中錨的數(shù)目,每個錨被存儲在Anchors數(shù)組中,Anchors(0)是文檔中的第一個錨,而Anchors(1)是第二個錨,依次類推Title返回文檔的標題,只讀屬性Cookie返回或設置當前文檔的Cookie。Cookie是由瀏覽器讀取和寫入磁盤的文本文件,這些文件不是可執(zhí)行文件,不會對文件系統(tǒng)構成威脅,而且只能通過瀏覽器進行訪問。使用Cookie,可以在頁面之間傳遞信息LinksLink是一個對象,表示文檔中的超鏈接。Link對象的length屬性返回當前文檔中超鏈接的數(shù)目,每個超鏈接被存儲在Links數(shù)組中,Links(0)是文檔中的第一個超鏈接,Links(1)是文檔中的第二個超鏈接,依次類推2023/1/1227?網頁設計與制作〔第二版〕?續(xù)表屬性說明FormsForm是一個對象,表示文檔中的表單。Form對象的Length屬性返回當前文檔中表單的數(shù)目,每個表單被存儲在Forms數(shù)組中,F(xiàn)orms(0)是文檔中的第一個表單,F(xiàn)orms(1)j是第二個表單,依次類推Location返回文檔的Location對象LastModified返回當前文檔的最后修改日期Referrer返回引用文檔的URL地址2023/1/1228?網頁設計與制作〔第二版〕?表8-14 Document對象的方法方法說明Open用于為輸出打開文檔。執(zhí)行Open方法后,文檔中的當前內容將被清除,可以用Write或WriteLn將新的文本寫到文檔中Write向當前文檔中寫入字符串WriteLn將一個字符串寫到當前文檔,并在末尾加一個換行符。如果瀏覽器忽略換行符,則WriteLn和Write方法是一樣的Close關閉文檔,顯示所有用Write或WriteLn方法寫入的信息Clear清除當前文檔中的內容2023/1/1229?網頁設計與制作〔第二版〕?8.4.3Form對象
Form對象表示文檔中的一個表單,表單用于獲取輸入數(shù)據(jù)并向效勞器傳送。Form對象的屬性Form對象只有一個Submit方法和一個OnSubmit事件。Submit方法用于提交表單。在表單元素中輸入需要的數(shù)據(jù)后,通常要把表單內容提交給處理程序,這時就會觸發(fā)OnSubmit事件。在OnSubmit事件中,可以對表單中的數(shù)據(jù)進行有效性檢查,假設有錯那么可以暫時不發(fā)送數(shù)據(jù)。2023/1/1230?網頁設計與制作〔第二版〕?表8-15 Form對象的屬性屬性說明Action指定用于表單操作的后端過程的URL地址。這個屬性等價于<Form>標記的Action屬性Method指定客戶機和服務器之間數(shù)據(jù)交換的方法,取值為GET和POST。這個屬性等價于<form>標記的Method屬性Target指定目標窗口。這個屬性等價于<form>標記的Target屬性Elements返回包含在表單中的元素數(shù)組,數(shù)組中的元素可以是<input>標記定義的內部控件,也可以是<object>標記定義的嵌入對象(如ActiveX控件)2023/1/1231?網頁設計與制作〔第二版〕?8.4.4Location對象
通過Location對象可以訪問文檔的URL信息。
表8-16 Location對象的屬性屬性說明Href返回或設置裝入瀏覽器窗口的完整的URL地址。利用這個屬性,可以通過腳本代碼鏈接到其他位置Protocol返回或設置URL的協(xié)議Host返回或設置URL的宿主和端口,宿主和端口之間用冒號隔開HostName返回或設置URL的宿主,可以是一個名字或一個IP地址Port返回或設置URL的端口PathName返回或設置URL的路徑Search返回或設置URL的搜索部分Hash返回或設置URL的無用部分2023/1/1232?網頁設計與制作〔第二版〕?8.4.5Link對象Link對象表示文檔中的超鏈接。Link對象的屬性與Location對象的屬性類似。利用Link對象提供的屬性,可以得到鏈接目標的URL信息。此外,單擊超鏈接時,將觸發(fā)OnClick事件;而鼠標指針移到超鏈接上時,將觸發(fā)OnMouseOver事件。8.4.6History對象History對象是一個不可見的對象,提供了瀏覽器導航按鈕的功能。History對象有3個方法,即Back,F(xiàn)orward和Go方法。Back方法用于在歷史記錄中往回搜索,相當于瀏覽器的“后退〞按鈕;Forward方法用于在歷史記錄中向前搜索,相當于“前進〞按鈕;Go方法用于跳到歷史記錄中的某一項。History對象只有一個Length屬性,該屬性表示在歷史記錄中URL的數(shù)目。2023/1/1233?網頁設計與制作〔第二版〕?8.4.7Navigator對象Navigator對象返回瀏覽器的有關信息。例如,可以用AppCodeName屬性返回瀏覽器的代碼名,用AppName屬性返回瀏覽器名,用AppVersion屬性返回瀏覽器的版本,用UserAgent屬性返回瀏覽器的用戶代碼。8.4.8程序實例2023/1/1234?網頁設計與制作〔第二版〕?8.5JavaScript根底8.5.1數(shù)據(jù)類型、常量和變量1.根本數(shù)據(jù)類型在JavaScript中有4種根本的數(shù)據(jù)類型:數(shù)值型〔整數(shù)和實數(shù)〕、字符串型〔用“〞號或‘’括起來的字符〕、布爾型〔用True或False表示〕和空值。在JavaScript的根本類型中的數(shù)據(jù)可以是常量,也可以變量。由于JavaScript采用弱類型的形式,因而一個數(shù)據(jù)的變量或常量不必首先聲明,而是在使用或賦值時確定其數(shù)據(jù)的類型的。當然也可以先聲明該數(shù)據(jù)的類型,它是通過在賦值時自動說明其數(shù)據(jù)類型的。2023/1/1235?網頁設計與制作〔第二版〕?2.常量JavaScript的常量又稱字面常量,它是不能改變的數(shù)據(jù)。常量一般分為:整型常量、實型常量、布爾值、字符型常量和空值。3.變量在JavaScript中,對于變量必須明確變量的命名、類型、聲明及其作用域。〔1〕變量的命名〔2〕變量的類型〔3〕變量的聲明及其作用域JavaScript變量可以在使用前先用var關鍵字對變量進行聲明同時賦值。對變量進行聲明的最大好處就是能及時發(fā)現(xiàn)代碼中的錯誤,因為JavaScript采用動態(tài)編譯,而動態(tài)編譯是不易發(fā)現(xiàn)代碼中的錯誤,特別是變量命名方面的錯誤。JavaScript中的變量有兩種不同的作用域:全局變量和局部變量。全局變量是定義在所有函數(shù)體之外,其作用范圍是整個函數(shù);而局部變量是在函數(shù)體之內用var關鍵字定義的,它只對該函數(shù)是可見的,而對其他函數(shù)那么不可見。全局變量也能夠使用var定義,但不是必需的。2023/1/1236?網頁設計與制作〔第二版〕?8.5.2運算符和表達式賦值運算符比較運算符算術運算符字符串運算符邏輯運算符位操作運算符在JavaScript中,表達式是由常量、變量以及運算符構成的。表達式可以分為算術表述式、字符串表達式、賦值表達式和布爾表達式等。2023/1/1237?網頁設計與制作〔第二版〕?8.5.3JavaScript中的語句1.條件語句if(條件){語句段1;}else{語句段2;}2.循環(huán)語句〔1〕for循環(huán)語句根本格式:for(初始化;條件;增量){語句集;}2023/1/1238?網頁設計與制作〔第二版〕?〔2〕while循環(huán)語句根本格式:while(條件){語句集;}〔3〕break和continue語句2023/1/1239?網頁設計與制作〔第二版〕?8.5.4JavaScript的函數(shù)JavaScript支持對函數(shù)的使用。函數(shù)可以有一個或多個參數(shù)以及一個返回值。由于JavaScript語言是一個松散類型的語言,所以并不一定要為JavaScript函數(shù)定義參數(shù)或返回值的類型,另外函數(shù)可以是一個對象的屬性,在這種情況下,它的作用與該對象的方法相同。
1.JavaScript函數(shù)定義Function函數(shù)名(參數(shù),變元){函數(shù)體;.Return表達式;}2023/1/1240?網頁設計與制作〔第二版〕?說明:當調用函數(shù)時,所用變量或字面量均可作為變元傳遞。函數(shù)由關鍵字Function定義,F(xiàn)unction后面跟函數(shù)名。參數(shù)表是傳遞給函數(shù)使用或操作的值,其值可以是常量、變量或其他表達式。通過指定“函數(shù)名(實參)〞來調用一個函數(shù)。在函數(shù)中必須使用Return將值返回。注意:在JavaScript中,函數(shù)名對大小寫是敏感的。2023/1/1241?網頁設計與制作〔第二版〕?2.JavaScript的內置函數(shù)在JavaScript中用戶可以自定義函數(shù),系統(tǒng)也有一些函數(shù)稱為內置函數(shù)或內部方法,這些函數(shù)內置于語言本身,不屬于任何對象,使用這些函數(shù)不需創(chuàng)立任何實例,可以直接引用。eval:該函數(shù)用于計算表達式或語句,任何表達式、語句或對象屬性都可以計算。該函數(shù)的語法為:returnval=eval(anylegalJavaexpressionsorstatement)parseInt:該函數(shù)用于取得一個字符串并將它按指定的進制轉換成整數(shù)。進制單位在第二個參數(shù)中指定。該函數(shù)的語法為parseInt(string[,radix])parseFloat:該函數(shù)的功能與parseInt函數(shù)類似,不同的是它返回的是一個字符串的浮點數(shù)表示而不是一個整數(shù)表示。該函數(shù)的語法為parseFloat(string)2023/1/1242?網頁設計與制作〔第二版〕?8.5.5JavaScript的事件JavaScript是一個事件驅動的語言。一個事件驅動的程序可以對事件做出響應,如單擊鼠標或加載一個文檔事件。一個事件可以引起執(zhí)行一段代碼〔稱為事件處理程序〕,使得程序能夠對事件做出正確的響應。響應一個事件的程序稱為事件處理程序。JavaScript的事件處理方式與VBScript相同。2023/1/1243?網頁設計與制作〔第二版〕?1.單擊事件onClick當用戶單擊鼠標按鈕時,產生onClick事件。同時onClick指定的事件處理程序或代碼將被調用執(zhí)行。通常在以下根本對象中產生:button〔按鈕對象〕checkbox〔復選框〕或〔檢查列表框〕radio〔單項選擇鈕〕resetbuttons〔重置按鈕〕submitbuttons〔提交按鈕〕2023/1/1244?網頁設計與制作〔第二版〕?2.改變事件onChange當利用Text或Texturea元素輸入字符值改變時引發(fā)該事件,同時當在select表格項中一個選項狀態(tài)改變后也會引發(fā)該事件。3.選中事件onSelect當Text或Textarea對象中的文字被加亮后,引發(fā)該事件。4.獲得焦點事件onFocus當用戶單擊Text或Textarea以及Select對象時,產生該事件。此時該對象成為前臺對象。5.失去焦點事件onBlur當Text對象或Textarea對象以及Select對象不再擁有焦點,而退到后臺時,引發(fā)該文件,它與onFocas事件是一個對應的關系。2023/1/1245?網頁設計與制作〔第二版〕?6.載入文件事件onLoad當文檔載入時,引發(fā)onLoad事件。OnLoad事件的一個作用就是在首次載入一個文檔時檢測Cookie的值,并用一個變量為其賦值,使它可以被源代碼使用。7.卸載文件事件onUnload當退出Web頁面時引發(fā)onUnload事件,并可更新Cookie的狀態(tài)。8.鼠標移動事件OnMouseOver當鼠標從一個鏈接或錨站上移動過去的時候引發(fā)OnMouseOver事件。9.提交事件OnSubmit當用戶提交一個表單的時候引發(fā)OnSubmit事件。2023/1/1246?網頁設計與制作〔第二版〕?8.6JavaScript中的對象
JavaScript是一種基于對象的語言,在JavaScript中,對象是對客觀事物或事物之間的關系的刻畫。JavaScript的對象有內建對象和用戶自定義對象兩大類,內建對象包含了對瀏覽器各成分的描述,用戶自定義對象允許用戶根據(jù)需要創(chuàng)立自己的對象。JavaScript中的對象是由屬性和方法兩個根本元素構成的,屬性是對象的數(shù)據(jù),方法是對數(shù)據(jù)的操作。在JavaScript中,可以使用JavaScript的內建對象,也可以使用瀏覽器對象,還可以使用自定義對象,但是在使用對象之前,這個對象必須存在。2023/1/1247?網頁設計與制作〔第二版〕?8.6.1自定義對象用戶定義自己的對象包括構造對象的屬性和定義對象的方法兩個局部。定義對象的步驟首先定義對象的構造函數(shù),其中包括每個屬性成員的定義和初始化,以及每個方法成員的初始化。然后定義對象的各個方法成員,每個方法成員就是一個普通函數(shù)。構造函數(shù)從形式上看與普通函數(shù)相同,但要注意構造函數(shù)的名字就是對象的名字,在構造函數(shù)中使用關鍵字this為對象的屬性成員和方法成員初始化。this本身是一個特殊對象,即當前構造函數(shù)正在創(chuàng)立的對象。每個對象都必須定義構造函數(shù)。2023/1/1248?網頁設計與制作〔第二版〕?8.6.2對象的引用要引用對象,必須先用保存字new創(chuàng)立對象的實例。var對象實例名=new對象名〔實在參數(shù)表〕;創(chuàng)立了對象實例后,就可以通過該實例引用對象的屬性和方法成員。對象屬性成員的引用格式是:對象實例名.屬性成員名;對象方法成員的引用格式是:對象實例名.方法成員名;2023/1/1249?網頁設計與制作〔第二版〕?8.6.3有關對象操作的語句1.For…in語句該語句用于循環(huán)遍歷一個對象中的所有屬性。該語句的語法格式為for(varibleinobject){//語句}其中,Varible可以是用戶選擇的任何變量名。2.new語句該語句用于創(chuàng)立一個對象的新實例。它的語法格式為objectvar=newobjecttype(param1[,param2]…[,paramN])3.with語句該語句用于為一系列語句設置缺省對象,然后可以引用屬性而無需使用父對象。它的語法格式為with(object){statement;}2023/1/1250?網頁設計與制作〔第二版〕?8.6.4常用的內建對象在JavaScript中,掌握和使用JavaScript的預定義對象〔即內建對象〕和瀏覽器對象是很重要的。JavaScript提供了一些非常有用的常用內建對象和方法,如String對象、Math對象和Date對象等。JavaScript的數(shù)組也可通過一個內建的數(shù)組對象Array來實現(xiàn)。2023/1/1251?網頁設計與制作〔第二版〕?1.數(shù)組數(shù)組是假設干個元素的有序集合,每個數(shù)組有一個名字作為標識。在幾乎所有的高級語言中,數(shù)組都是被支持的數(shù)據(jù)類型;但在JavaScript中,沒有明顯的數(shù)組類型。在JavaScript中數(shù)組可通過對象來實現(xiàn),具體有以下兩種實現(xiàn)方式:使用JavaScript的內建對象Array;使用自定義對象的方式創(chuàng)立數(shù)組對象。2023/1/1252?網頁設計與制作〔第二版〕?〔1〕通過內建對象Array使用數(shù)組內建數(shù)組對象Array的使用方法與自定義對象的使用方法根本相同。創(chuàng)立數(shù)組對象的實例數(shù)組元素的引用Array對象的屬性和方法2023/1/1253?網頁設計與制作〔第二版〕?〔2〕自定義數(shù)組對象自定義數(shù)組對象與一般的自定義對象的使用方法是一樣的:通過Function定義一個數(shù)組的構造函數(shù),并使用new對象操作符創(chuàng)立一個具有指定長度的數(shù)組。定義數(shù)組對象FunctionarrayName(size){This.length=Size;for(varX=0;X<size;X++)this[X]=0;Returethis;}創(chuàng)立數(shù)組實例2023/1/1254?網頁設計與制作〔第二版〕?2.String對象String對象是一個靜態(tài)對象,訪問屬性和方法的格式是:對象名.方法名/屬性名?!?〕String對象的屬性String對象只有一個屬性,即length。它說明了字符串中的字符個數(shù),包括所有符號?!?〕String對象的方法2023/1/1255?網頁設計與制作〔第二版〕?3.Math對象Math對象封裝了常用的數(shù)學常數(shù)和運算,包括三角函數(shù)、對數(shù)函數(shù)、指數(shù)函數(shù)等。Math對象本身就是一個實例,是由系統(tǒng)創(chuàng)立的靜態(tài)對象,不需用new創(chuàng)立對象的實例?!?〕Math對象的屬性Math對象的屬性定義了一些常用的數(shù)學常數(shù),它們是只讀的,如表8-18所示。2023/1/1256?網頁設計與制作〔第二版〕?表8-19 Math對象的常用方法方法含義方法含義sin(val)返回val的正弦值,val的單位是弧度abs(val)返回val的絕對值cos(val)返回val的余弦值,val的單位是弧度ceil(val)返回大于或等于val的最小整數(shù)值tan(val)返回val的正切值,val的單位是弧度floor(val)返回小于或等于val的最小整數(shù)值asin(val)返回val的反正弦值,val的單位是弧度round(val)返回val四舍五入得到的整數(shù)值exp(val)返回E的val次方random()返回0~
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年浙江省衢州市單招職業(yè)傾向性考試模擬測試卷附答案
- 2026年廣東省梅州市單招職業(yè)適應性測試題庫及答案1套
- 2026年廣西農業(yè)職業(yè)技術大學單招綜合素質考試模擬測試卷及答案1套
- 2026年江蘇省泰州市單招職業(yè)適應性測試模擬測試卷及答案1套
- 2026年政府保密知識測試題含答案
- 2025河南省醫(yī)學科學院康復醫(yī)學研究所第三批招聘工作人員13人參考題庫附答案
- 2026中國旅游集團總部及所屬企業(yè)崗位招聘9人筆試備考試題及答案解析
- 2026陜西師范大學西安市浐灞教育集團招聘筆試備考題庫及答案解析
- 2025年湖南長沙市雨花區(qū)育新第二小學秋教師招聘筆試備考題庫附答案
- 2025年四平市民族宗教事務服務中心等事業(yè)單位公開選調工作人員備考題庫(17人)附答案
- 職高高二語文試卷及答案分析
- 2025屆江蘇省南通市高三下學期3月二?;瘜W試題(含答案)
- 班主任安全管理分享會
- 消防救援預防職務犯罪
- 畢業(yè)論文答辯的技巧有哪些
- 酒店安全風險分級管控和隱患排查雙重預防
- 2018年風電行業(yè)事故錦集
- 一體化泵站安裝施工方案
- 《重點新材料首批次應用示范指導目錄(2024年版)》
- 防水班組安全晨會(班前會)
- 全國職業(yè)院校技能大賽高職組(研學旅行賽項)備賽試題及答案
評論
0/150
提交評論