JavaScript HTML DOM 事件
JavaScript HTML DOM 事件
HTML DOM 讓 JavaScript 有能力對 HTML 事件做出反應。
對事件做出反應
我們可以在事件發生時執行 JavaScript,例如當使用者在 HTML 元素上點擊時。
如需在使用者點選某個元素時執行程式碼,請為一個HTML 事件屬性新增JavaScript 程式碼:
onclick=JavaScript
HTML 事件的範例:
當使用者點擊滑鼠時當網頁已載入時當圖像已載入時當滑鼠移動到元素上時當輸入欄位被改變時當提交HTML 表單時當使用者觸發按鍵時
在本範例中,當使用者點擊時,會改變<h1> 元素的內容:
<!doctype html> <html> <meta charset="utf-8"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta name="Description" content=""> <title>Document</title> </head> <body> <h1 onclick="this.innerHTML='hello!'">点我点我点我!</h1> </body> </html>
在本例中,會從事件處理程序中呼叫函數:
<!DOCTYPE html> <html> <meta charset="utf-8"> <head> <script> function changetext(id) { id.innerHTML="hello!"; } </script> </head> <body> <h1 onclick="changetext(this)">请点击这段文本!</h1> </body> </html>
HTML 事件屬性
如需向HTML 元素指派事件,您可以使用事件屬性。
在 button 元素中指派一個 onclick 事件:
<!DOCTYPE html> <html> <meta charset="utf-8"> <body> <p>点击按钮来执行 <b>displayDate()</b> 函数。</p> <button onclick="displayDate()">试一试</button> <script> function displayDate() { document.getElementById("demo").innerHTML=Date(); } </script> <p id="demo"></p> </body> </html>
在上面的範例中,當點擊按鈕時,會執行名為 displayDate 的函數。
使用HTML DOM 來指派事件
HTML DOM 允許您使用JavaScript 為HTML 元素指派事件:
為button 元素指派onclick 事件:
<!DOCTYPE html> <html> <meta charset="utf-8"> <head> </head> <body> <p>点击按钮来执行 <b>displayDate()</b> 函数。</p> <button id="myBtn">试一试</button> <script> document.getElementById("myBtn").onclick=function(){displayDate()}; function displayDate() { document.getElementById("demo").innerHTML=Date(); } </script> <p id="demo"></p> </body> </html>
在上面的例子中,名為displayDate 的函數被分配給了id=myButn" 的HTML 元素。
當按鈕被點擊時,將執行函數。
onload 和onunload 事件
當使用者進入或離開頁面時,會觸發onload 和onunload 事件。
onload 事件可用於檢查訪客的瀏覽器類型和版本,以便基於這些資訊來載入不同版本的網頁。
onload 和onunload 事件可用於處理cookies。如何使用onchange。元素時觸發函數。
onmousedown、onmouseup 以及 onclick 事件就是滑鼠點擊的整個過程。首先當某個滑鼠按鈕被點擊時,觸發 onmousedown 事件,然後,當滑鼠按鈕被放開時,會觸發 onmouseup 事件,最後,當滑鼠點擊完成時,觸發 onclick 事件。
一個簡單的 onmousedown-onmouseup 實例:
<!DOCTYPE html> <html> <meta charset="utf-8"> <body onload="checkCookies()"> <script> function checkCookies() { if (navigator.cookieEnabled==true) { alert("Cookies are enabled") } else { alert("Cookies are not enabled") } } </script> <p>弹出的提示框会告诉你浏览器是否已启用 cookie。</p> </body> </html>