JavaScript中DOM操作常用事件總結(jié)
上一篇聊了如何同JavaScript獲得頁面元素,而獲得頁面元素的的目的就是操作這個元素的一行為,而這個行為是通過某個條件進行觸發(fā)的。而這個一系列在JavaScript中稱之為事件。
由此可以看出事件分三個部分:
事件源頭: 也就是要操作的元素是誰。
事件類型: 也就是事件觸發(fā)條件,比如鼠標點擊以及鼠標滑過等。
事件處理: 如果觸發(fā)了這個行為,如何操作,以及操作結(jié)果。
常用事件
現(xiàn)在說一下常用的事件,這個不是全部的事件,如果需要了解全部的事件可以看官方文檔。
常用的事件有:
事件類型 | 描述 |
---|---|
onblur | 對象失去焦點的時候觸發(fā) |
onfous | 當獲得焦點的時候觸發(fā) |
onclick | 用戶鼠標左鍵點擊的時候觸發(fā) |
ondblclick | 用戶雙擊時候觸發(fā) |
onchange | 當對象或者選中區(qū)內(nèi)容改變的時候觸發(fā) |
onkeyup | 當用戶釋放鍵盤按鍵時候觸發(fā)(還有兩個事件onkeydown和onkeypress) |
onload | 瀏覽器加載完畢后立即觸發(fā) |
onmouseout | 當用戶將鼠標移出對象范圍時觸發(fā) |
onmouseover | 當用戶數(shù)鼠標在對象上滑動的時候觸發(fā) |
onselect | 當當前選擇區(qū)改變時觸發(fā) |
onunload | 對象卸載前理解觸發(fā) |
下面演示的時候會有些涉及到涉及到一些屬性的變化,可以先不關(guān)心而是關(guān)系這個事件是如何觸發(fā)發(fā)。后面單獨為再寫一篇關(guān)于屬性的修改以及賦值。
演示得到焦點和失去焦點
演示:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>測試文檔</title> </head> <body> <!--可以在標簽上直接綁定事件類型--> <label>姓名</label> <input id="testid" type="text" onfocus="test_foncus()" value="請輸入"> <script> var element=document.getElementById("testid"); function test_foncus() { if (element.value=="請輸入"){ element.value=""; } } // 也可以主頁綁定事件類型 element.onblur=function () { console.log(element.value); if (element.value==""){ element.value="請輸入"; } } </script> </body> </html>
演示 鼠標劃過和離開
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>測試文檔</title> <style> div { width: 200px; height: 200px; background-color: blue; } </style> </head> <body> <div id="testid" ></div> <script> var element=document.getElementById("testid"); element.onmouseover=function () { element.style='background-color:pink;'; } element.onmouseout=function () { element.style='background-color:blue;'; } </script> </body> </html>
點擊事件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>測試文檔</title> <style> </style> </head> <body> <button id="testid">點擊按鈕</button> <script> var element=document.getElementById("testid"); element.onclick=function () { confirm("你確定你要點擊?") } </script> </body> </html>
load加載頁面事件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>測試文檔</title> <style> </style> </head> <body> <div id="testid1"></div> <hr> <div id="testid2"></div> <script> var element1=document.getElementById("testid1"); var element2=document.getElementById("testid2"); // 一般onload加載是監(jiān)控的是這個頁面的加載所以一般都是window調(diào)用 window.onload=function () { element1.innerText="innerText插入"; element2.innerHTML="<h1>innerHTML插入</h1>" } </script> </body> </html>
補充 innerText和innerHTML區(qū)別
- innerText 在頁面上輸出文本內(nèi)容,直接將標簽刪除
- innerHTML在頁面上輸出標簽效果以及其內(nèi)容。
onkeyup 鍵盤彈起事件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>測試文檔</title> <style> </style> </head> <body> <input id="testid" type="text"> <script> var element=document.getElementById("testid"); element.onkeyup=function () { alert("你在輸入內(nèi)容啊") } </script> </body> </html>
內(nèi)容變化事件
演示:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>測試文檔</title> <style> </style> </head> <body> <input id="testid" type="text"> <script> var element=document.getElementById("testid"); // 到鼠標離開的時候就會變得是否內(nèi)容修改 element.onchange=function () { alert("你在修改嗎?") } </script> </body> </html>
選中時觸發(fā)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>測試文檔</title> <style> </style> </head> <body> <input id="testid" type="text" value="點擊兩次選選擇"> <script> var element=document.getElementById("testid"); element.onselect=function () { alert(element.value); } </script> </body> </html>
到此這篇關(guān)于JavaScript中DOM操作常用事件總結(jié)的文章就介紹到這了,更多相關(guān)JavaScript DOM事件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- JavaScript DOMContentLoaded事件案例詳解
- JavaScript WebAPI、DOM、事件和操作元素實例詳解
- 詳解用js代碼觸發(fā)dom事件的實現(xiàn)方案
- JS前端知識點總結(jié)之頁面加載事件,數(shù)組操作,DOM節(jié)點操作,循環(huán)和分支
- JS實現(xiàn)同一DOM元素上onClick事件與onDblClick事件并存的解決方法
- js中DOM事件綁定分析
- JS對象與JSON互轉(zhuǎn)換、New Function()、 forEach()、DOM事件流等js開發(fā)基礎(chǔ)小結(jié)
- js學(xué)習(xí)總結(jié)之dom2級事件基礎(chǔ)知識詳解
- JS實現(xiàn)動態(tài)添加DOM節(jié)點和事件的方法示例
- JavaScript DOM操作與事件處理方法
相關(guān)文章
JavaSctit 利用FileReader和濾鏡上傳圖片預(yù)覽功能
FileReader 對象允許Web應(yīng)用程序異步讀取存儲在用戶計算機上的文件內(nèi)容,使用 File或 Blob對象指定要讀取的文件或數(shù)據(jù)。下面通過本文給大家分享JavaSctit 利用FileReader和濾鏡上傳圖片預(yù)覽功能,需要的朋友參考下吧2017-09-09uniapp小程序?qū)崙?zhàn)之利用騰訊地圖獲取定位
使用uniapp是因為它是一個使用vue.js開發(fā)所有前端應(yīng)用的框架,開發(fā)者編寫一套代碼,可以發(fā)布到ios,android,web以及各種小程序,快應(yīng)用等多個平臺,下面這篇文章主要給大家介紹了關(guān)于uniapp小程序?qū)崙?zhàn)之利用騰訊地圖獲取定位的相關(guān)資料,需要的朋友可以參考下2023-02-02js頁面跳轉(zhuǎn)的問題(跳轉(zhuǎn)到父頁面、最外層頁面、本頁面)
js頁面跳轉(zhuǎn):本頁面跳轉(zhuǎn),上一層頁面跳轉(zhuǎn),最外層的頁面跳轉(zhuǎn),下面為大家大家分享下不同頁面之家的跳轉(zhuǎn)問題,感興趣的朋友可以學(xué)習(xí)下2013-08-08Bootstrap布局之柵格系統(tǒng)學(xué)習(xí)筆記
這篇文章主要為大家詳細介紹了Bootstrap布局之柵格系統(tǒng)的學(xué)習(xí)筆記,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05