JavaScript事件驅(qū)動(dòng)及事件處理

字號(hào):

1、基本概念
    JavaScript是基于對(duì)象(object-based)的語言。這與Java不同,Java是面向?qū)ο蟮恼Z言。而基于對(duì)象的基本特征,就是采用事件驅(qū)動(dòng)(event-driven)。它是在用形界面的環(huán)境下,使得一切輸入變化簡(jiǎn)單化。通常鼠標(biāo)或熱鍵的動(dòng)作我們稱之為事件(Event),而由鼠標(biāo)或熱鍵引發(fā)的一連串程序的動(dòng)作,稱之為事件驅(qū)動(dòng)(Event Driver)。而對(duì)事件進(jìn)行處理程序或函數(shù),我們稱之為事件處理程序(Event Handler)。
    2、事件處理程序
    在JavaScript中對(duì)象事件的處理通常由函數(shù)(Function)擔(dān)任。其基本格式與函數(shù)全部一樣,可以將前面所介紹的所有函數(shù)作為事件處理程序。
    格式如下:
    Function 事件處理名(參數(shù)表){
    事件處理語句集;
    ……
    }
    3、事件驅(qū)動(dòng)
    JavaScript事件驅(qū)動(dòng)中的事件是通過鼠標(biāo)或熱鍵的動(dòng)作引發(fā)的。它主要有以下幾個(gè)事件:
    (1)單擊事件onClick
    當(dāng)用戶單擊鼠標(biāo)按鈕時(shí),產(chǎn)生onClick事件。同時(shí)onClick指定的事件處理程序或代碼將被調(diào)用執(zhí)行。通常在下列基本對(duì)象中產(chǎn)生:
    button(按鈕對(duì)象)
    checkbox(復(fù)選框)或(檢查列表框)
    radio (單選鈕)
    reset buttons(重要按鈕)
    submit buttons(提交按鈕)
    例:可通過下列按鈕激活change()文件:
    

    
    

    在onClick等號(hào)后,可以使用自己編寫的函數(shù)作為事件處理程序,也可以使用JavaScript中內(nèi)部的函數(shù)。還可以直接使用JavaScript的代碼等。例:
        2)onChange改變事件
    當(dāng)利用text或texturea元素輸入字符值改變時(shí)發(fā)該事件,同時(shí)當(dāng)在select表格項(xiàng)中一個(gè)選項(xiàng)狀態(tài)改變后也會(huì)引發(fā)該事件。
    例:
    

    
    

    (3)選中事件onSelect
    當(dāng)Text或Textarea對(duì)象中的文字被加亮后,引發(fā)該事件。
    (4)獲得焦點(diǎn)事件onFocus
    當(dāng)用戶單擊Text或textarea以及select對(duì)象時(shí),產(chǎn)生該事件。此時(shí)該對(duì)象成為前臺(tái)對(duì)象。
    (5)失去焦點(diǎn)onBlur
    當(dāng)text對(duì)象或textarea對(duì)象以及select對(duì)象不再擁有焦點(diǎn)、而退到后臺(tái)時(shí),引發(fā)該文件,他與onFocas事件是一個(gè)對(duì)應(yīng)的關(guān)系。
    (6)載入文件onLoad
    當(dāng)文檔載入時(shí),產(chǎn)生該事件。onLoad一個(gè)作用就是在首次載入一個(gè)文檔時(shí)檢測(cè)cookie的值,并用一個(gè)變量為其賦值,使它可以被源代碼使用。
    (7)卸載文件onUnload
    當(dāng)Web頁(yè)面退出時(shí)引發(fā)onUnload事件,并可更新Cookie的狀態(tài)。