DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> JavaScript事件詳細講解
JavaScript事件詳細講解
編輯:關於JavaScript     

事件的概念

事件:指的是文檔或者浏覽器窗口中發生的一些特定交互瞬間。我們可以通過偵聽器(或者處理程序)來預定事件,以便事件發生的時候執行相應的代碼。

一、事件流

1.事件流:描述的是在頁面中接受事件的順序

2.事件冒泡:由最具體的元素接收,然後逐級向上傳播至最不具體的元素的節點(文檔)

3.事件捕獲:最不具體的節點先接收事件,而最具體的節點應該最後接收事件

二、事件處理

1.HTML事件處理:直接添加到HTML結構中

2.DOM0級事件處理:把一個函數賦值給一個事件處理程序屬性

3.DOM2級事件處理:

addEventListener("事件名","事件處理函數",布爾值)

true:事件捕獲

false:事件冒泡

removeEventListener();

4.IE事件處理程序

attachEvent

detachEvent

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div id="div">
<button id="btn1">按鈕</button>
</div>
<!--<script>
function demo(){
alert("Hello HTML事件處理");
}
</script>-->
<!--<script>
var btn1 = document.getElementById("btn1");
btn1.onclick = function(){alert("Hello DOM0級事件處理程序")};//被覆蓋掉
btn1.onclick = function(){alert("Hello DOM0級事件處理程序2")};
btn1.onclick = function(){alert("Hello DOM0級事件處理程序3")};
</script>-->
<!--<script>
var btn1 = document.getElementById("btn1");
btn1.addEventListener("click",demo1);
btn1.addEventListener("click",demo2);
btn1.addEventListener("click",demo3);
function demo1(){
alert("DOM2級事件處理程序1");
}
function demo2(){
alert("DOM2級事件處理程序2");
}
function demo3(){
alert("DOM2級事件處理程序3");
}
btn1.removeEventListener("click",demo2)
</script>-->
<script>
var btn1 = document.getElementById("btn1");
if(btn1.addEventListener){
btn1.addEventListener("click",demo);
}else if(btn1.attachEvent){
btn1.attachEvent("onclick",demo)
}else{
btn1.onclick = demo();
}
function demo(){
alert("Hello");
}
</script>
</body>
</html>

三、事件對象

1、事件對象:在觸發DOM事件的時候都會產生一個對象

2、事件對象event:

type:獲取事件類型

target:獲取事件目標

stopPropagation():阻止事件冒泡

preventDefault():阻止事件默認行為

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div id="div">
<button id="btn1">按鈕</button>
<a href="http://www.baidu.com" id="aid">百度</a>
</div>
<script>
document.getElementById("btn1").addEventListener("click",showType);
document.getElementById("div").addEventListener("click",showDiv);
document.getElementById("aid").addEventListener("click",showA);
function showType(event){
// alert(event.type);
alert(event.target);
event.stopPropagation();//阻止事件冒泡
}
function showDiv(){
alert("div")
}
function showA(event){
// event.stopPropagation();
// event.preventDefault();
}
</script>
</body>
</html>

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved