JavaScript 事件
為JavaScript在瀏覽器中以單線程模式運行,頁面加載后,一旦頁面上所有的JavaScript代碼被執(zhí)行完后,就只能依賴觸發(fā)事件來執(zhí)行JavaScript代碼。
瀏覽器在接收到用戶的鼠標(biāo)或鍵盤輸入后,會自動在對應(yīng)的DOM節(jié)點上觸發(fā)相應(yīng)的事件。如果該節(jié)點已經(jīng)綁定了對應(yīng)的JavaScript處理函數(shù),該函數(shù)就會自動調(diào)用。
JavaScript 事件
網(wǎng)頁中能被 JavaScript 偵測到的行為稱為 JavaScript 事件。以下是一些常見的 JavaScript 事件舉例:
1. 頁面內(nèi)容被瀏覽器載入
2. 用戶點擊一個按鈕
3. 用戶按下某個按鍵
事件通常和 JavaScript 函數(shù)一起配合使用,即以事件驅(qū)動函數(shù),來完成我們希望的某些功能。
常見的HTML事件
下面是一些常見的HTML事件的列表:
事件 描述
onchange HTML 元素改變
onclick 用戶點擊 HTML 元素
onmouseover 用戶在一個HTML元素上移動鼠標(biāo)
onmouseout 用戶從一個HTML元素上移開鼠標(biāo)
onkeydown 用戶按下鍵盤按鍵
onload 瀏覽器已完成頁面的加載
onclick 事件
當(dāng)鼠標(biāo)點擊頁面上某個對象時,會觸發(fā) onclick 事件,如下例子所示:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> <script type="text/javascript"> function hello(){ var name = document.getElementById("name").value; if( name == "") { alert("請輸入你的姓名!"); return false; } else { alert(name + ",你好!"); } } </script> </head> <body> 姓名:<input type="text" id="name" /> <input type="button" onclick="hello()" value="確定" /> </body> </html>
在上面的例子中,對確定按鈕設(shè)定了 onclick 事件屬性,其值為 "hello()" JavaScript 函數(shù),也即當(dāng)點擊按鈕時,執(zhí)行 hello 函數(shù)。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> </head> <body> <button onclick="displayDate()">點這里</button> <script> function displayDate(){ document.getElementById("demo").innerHTML=Date(); } </script> <p id="demo"></p> </body> </html>
JavaScript 可以做什么?
事件可以用于處理表單驗證,用戶輸入,用戶行為及瀏覽器動作:
頁面加載時觸發(fā)事件頁面關(guān)閉時觸發(fā)事件用戶點擊按鈕執(zhí)行動作驗證用戶輸入內(nèi)容的合法性等等 ...
可以使用多種方法來執(zhí)行 JavaScript 事件代碼:
HTML 事件屬性可以直接執(zhí)行 JavaScript 代碼
HTML 事件屬性可以調(diào)用 JavaScript 函數(shù)你可以為
HTML 元素指定自己的事件處理程序
你可以阻止事件的發(fā)生。
等等 ...