JavaScript HTML DOM 事件
HTML DOM 使 JavaScript 有能力對 HTML 事件做出反應。
對事件做出反應
我們可以在事件發生時執行 JavaScript,比如當用戶在 HTML 元素上點擊時。
如需在用戶點擊某個元素時執行代碼,請向一個 HTML 事件屬性添加 JavaScript 代碼:
οnclick=JavaScript
HTML 事件的例子:
- 當用戶點擊鼠標時
- 當網頁已加載時
- 當圖像已加載時
- 當鼠標移動到元素上時
- 當輸入字段被改變時
- 當提交 HTML 表單時
- 當用戶觸發按鍵時
在本例中,當用戶在 <h1> 元素上點擊時,會改變其內容:
<!DOCTYPE html>
<html>
<body>
<h1 οnclick="this.innerHTML='Ooops!'">點擊文本!</h1>
</body>
</html>
本例從事件處理器調用一個函數:
<!DOCTYPE html>
<html>
<head>
<script>
function changetext(id)
{
id.innerHTML="Ooops!";
}
</script>
</head>
<body>
<h1 οnclick="changetext(this)">點擊文本!</h1>
</body>
</html>
HTML 事件屬性
如需向 HTML 元素分配 事件,您可以使用事件屬性。
向 button 元素分配 onclick 事件:
<button οnclick="displayDate()">點這裏</button>
在上面的例子中,名爲 displayDate 的函數將在按鈕被點擊時執行。
使用 HTML DOM 來分配事件
HTML DOM 允許您使用 JavaScript 來向 HTML 元素分配事件:
向 button 元素分配 onclick 事件:
<script>
document.getElementById("myBtn").οnclick=function(){displayDate()};
</script>
在上面的例子中,名爲 displayDate 的函數被分配給 id="myBtn" 的 HTML 元素。
按鈕點擊時Javascript函數將會被執行。
onload 和 onunload 事件
onload 和 onunload 事件會在用戶進入或離開頁面時被觸發。
onload 事件可用於檢測訪問者的瀏覽器類型和瀏覽器版本,並基於這些信息來加載網頁的正確版本。
onload 和 onunload 事件可用於處理 cookie。
<body οnlοad="checkCookies()">
onchange 事件
onchange 事件常結合對輸入字段的驗證來使用。
下面是一個如何使用 onchange 的例子。當用戶改變輸入字段的內容時,會調用 upperCase() 函數。
<input type="text" id="fname" οnchange="upperCase()">
onmouseover 和 onmouseout 事件
onmouseover 和 onmouseout 事件可用於在用戶的鼠標移至 HTML 元素上方或移出元素時觸發函數。
一個簡單的 onmouseover-onmouseout 實例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鳥教程(runoob.com)</title>
</head>
<body>
<div οnmοuseοver="mOver(this)" οnmοuseοut="mOut(this)" style="background-color:#D94A38;width:120px;height:20px;padding:40px;">Mouse Over Me</div>
<script>
function mOver(obj){
obj.innerHTML="Thank You"
}
function mOut(obj){
obj.innerHTML="Mouse Over Me"
}
</script>
</body>
</html>
onmousedown、onmouseup 以及 onclick 事件
onmousedown, onmouseup 以及 onclick 構成了鼠標點擊事件的所有部分。首先當點擊鼠標按鈕時,會觸發 onmousedown 事件,當釋放鼠標按鈕時,會觸發 onmouseup 事件,最後,當完成鼠標點擊時,會觸發 onclick 事件。