更新時間:2022年02月17日18時01分 來源:黑馬程序員 瀏覽次數(shù):
JavaScript是基于對象的腳本語言,它的一個最基本的特征就是采用事件鼎動。如,當(dāng)鼠標(biāo)指針經(jīng)過某個按鈕或者用戶在文本框中輸入某些信息時,都可以設(shè)置相應(yīng)的JavaScript事件來完成某些特殊效果。下面,將對JavaScript中的常用事件進行詳細(xì)講解。
鼠標(biāo)事件是指通過鼠標(biāo)動作觸發(fā)的事件,鼠標(biāo)事件有很多,下面列舉幾個常用的鼠標(biāo)事件,如表所示。
類別 | 事件 | 事件說明 |
鼠標(biāo)事件 | onclick | 鼠標(biāo)單擊時觸發(fā)此事件 |
ondblclick | 鼠標(biāo)雙擊時觸發(fā)此事件 | |
onmousedown | 鼠標(biāo)按下時觸發(fā)此事件 | |
onmouseup | 鼠標(biāo)彈起時觸發(fā)的事件 | |
onmouseover | 鼠標(biāo)移動到某個設(shè)置了此事件的元素上時觸發(fā)此事件 | |
onmousemove | 鼠標(biāo)移動時觸發(fā)此事件 | |
onmouseout | 鼠標(biāo)從某個設(shè)置了此事件的元素上離開時觸發(fā)此事件 |
鍵盤事件是指用戶在使用鍵盤時觸發(fā)的事件。例如,用戶按【Esc】鍵關(guān)閉打開的狀態(tài)欄,按【Enter】鍵直接完成光標(biāo)的上下切換等。下面列舉幾個常用的鍵盤事件,如表15-16所示。
表15-16 JavaScript中常用的鍵盤事件
類別 | 事件 | 事件說明 |
鍵盤事件 | onkeydown | 當(dāng)鍵盤上的某個按鍵被按下時觸發(fā)此事件 |
onkeyup | 當(dāng)鍵盤上的某個按鍵被按下后彈起時觸發(fā)此事件 | |
onkeypress | 當(dāng)輸入有效的字符按鍵時觸發(fā)此事件 |
表單事件是指對Web表單操作時發(fā)生的事件。例如,表單提交前對表單的驗證,表單重置時的確認(rèn)操作等。下面列舉幾個常用的表單事件,如表15-17所示。
表15-17 JavaScript中常用的表單事件
類別 | 事件 | 事件說明 |
表單事件 |
onblur | 當(dāng)前元素失去焦點時觸發(fā)此事件 |
onchange | 當(dāng)前元素失去焦點并且元素內(nèi)容發(fā)生改變時觸發(fā)此事件 | |
onfocus | 當(dāng)某個元素獲得焦點時觸發(fā)此事件 | |
onreset | 當(dāng)表單被重置時觸發(fā)此事件 | |
onsubmit | 當(dāng)表單被提交時觸發(fā)此事件 |
在項目開發(fā)中,經(jīng)常需要JavaScript對網(wǎng)頁中的DOM元素進行操作,而頁面的加載又是按照代碼的編寫順序,從上到下依次執(zhí)行的。因此,若在頁面還未加載完成的情況下,就使用JavaScript操作DOM元素,會出現(xiàn)語法錯誤,例如下面的示例代碼:
<script> document.getElementById('demo').onclick=function () { alert('單擊'); } </script> <button ide="demo">單擊顯示彈框</button>
在上述代碼中,第2行代碼利用getElementByldO獲取id為demo的元素,并為其添加擊”彈框;第6行代碼定義了一個用于單擊的按鈕。當(dāng)用戶單擊按鈕時,頁面就會彈出一個提示框。