什麼是事件
JavaScript 建立動態頁面。事件是可以被 JavaScript 偵測到的行為。 網頁中的每個元素都可以產生某些可以觸發 JavaScript 函數或程式的事件。
1、滑鼠點選事件(onclick)
onclick是滑鼠點擊事件,當在網頁上按一下滑鼠時,就會發生該事件。同時onclick事件呼叫的程式塊就會被執行,通常會與按鈕一起使用。
例:我們在點擊按鈕時,觸發 onclick 事件,並呼叫兩個數和的函數add2()。
<html> <head> <script type="text/javascript"> function add2(){ var numa,numb,sum; numa=6; numb=8; sum=numa+numb; document.write("两数和为:"+sum); } </script> </head> <body> <form> <input name="button" type="button" value="点击提交" onclick="add2()" /> </form> </body> </html>
注意: 在網頁中,如使用事件,就在該元素中設定事件屬性。
2、滑鼠經過事件(onmouseover)
滑鼠經過事件,當滑鼠移到一個物件上時,該物件就會觸發onmouseover事件,並執行onmouseover事件呼叫的程式。
當滑鼠經過"確定"按鈕後,呼叫message()函數,彈出訊息對話框。
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title> 鼠标经过事件 </title> <script type="text/javascript"> function message(){ confirm("请输入密码后,再单击确定!"); } </script> </head> <body> <form> 密码: <input name="password" type="password" > <input name="确定" type="button" value="确定" onmouseover="message()"/> </form> </body> </html>
3、滑鼠移開事件(onmouseout)
滑鼠移開事件,當滑鼠移開目前物件時,執行onmouseout呼叫的程式。
當滑鼠移開"點擊我"的按鈕時,呼叫message()函數,彈出訊息對話框。
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>鼠标移开事件 </title> <script type="text/javascript"> function message(){ alert("不要移开,点击后进行慕课网!"); } </script> </head> <body> <form> <a href="http://www.imooc.com" onmouseout="message()">点击我</a> </form> </body> </html>
4、遊標聚焦事件(onfocus)
當網頁中的物件獲得聚點時,執行onfocus呼叫的程式就會被執行。
當下拉清單得到焦點時,呼叫message()函數,就彈出對話框“"請選擇,您現在的職業! 」。
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title> 光标聚焦事件 </title> <script type="text/javascript"> function message(){ alert("请选择,您现在的职业!"); } </script> </head> <body> 请选择您的职业:<br> <form> <select name="career" onfocus="message()"> <option>学生</option> <option>教师</option> <option>工程师</option> <option>演员</option> <option>会计</option> </select> </form> </body> </html>
5、失焦事件(onblur)
onblur事件與onfocus是相對事件,當遊標離開目前獲得聚焦物件的時候,觸發onblur事件,同時執行被呼叫的程式。
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title> 失焦事件 </title> <script type="text/javascript"> function message(){ alert("请确定已输入密码后,在移开!"); } </script> </head> <body> <form> 用户: <input name="username" type="text" value="请输入用户名!" > 密码: <input name="password" type="text" value="请输入密码!" onblur="message()"> </form> </body> </html>
6、內容選取事件(onselect)
選取事件,當文字方塊或文字域中的文字被選取時,觸發onselect事件,同時呼叫的程式就會被執行。
當選取個人簡介文字方塊中文字時,觸發onselect事件,並彈出對話方塊。
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title> 内容选中事件 </title> <script type="text/javascript"> function message(){ alert("您触发了选中事件!"); } </script> </head> <body> <form> 个人简介:<br> <textarea name="summary" cols="60" rows="5" onselect="message()">请写入个人简介,不少于200字!</textarea> </form> </body> </html>
7、文字方塊內容改變事件(onchange)
透過改變文字方塊的內容來觸發onchange事件,同時執行被呼叫的程式。
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title> 文本框内容改变事件 </title> <script type="text/javascript"> function message(){ alert("您改变了文本内容!"); } </script> </head> <body> <form> 个人简介:<br> <textarea name="summary" cols="60" rows="5" onchange="message()">请写入个人简介,不少于200字!</textarea> </form> </body> </html>
8、載入事件(onload)
事件會在頁面載入完成後,立即發生,同時執行被呼叫的程式。
注意: 1. 載入頁面時,觸發onload事件,事件寫在
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title> 加载事件 </title> <script type="text/javascript"> function message(){ alert("加载中,请稍等…"); } </script> </head> <body onload="message()"> 欢迎学习JavaScript。 </body> </html>
9、卸載事件(onunload)
當使用者退出頁面時(頁面關閉、頁面重新整理等),觸發onUnload事件,同時執行被呼叫的程式。
注意:不同瀏覽器對onunload事件支援不同。
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title> 卸载事件 </title> <script type="text/javascript"> window.onunload = onunload_message; function onunload_message(){ alert("您确定离开该网页吗?"); } </script> </head> <body onunload="onunload_message"> 欢迎学习JavaScript。 </body> </html>
測試結果發現只有在IE瀏覽器裡執行,其他瀏覽器不執行。
以上就是關於Javascript事件回應的九種狀態,希望對大家的學習有所幫助。