[TOC]
>[info]Event 對象代表事件的狀態,比如事件在其中發生的元素、鍵盤按鍵的狀態、鼠標的位置、鼠標按鈕的狀態。
事件通常與函數結合使用,函數不會在事件發生前被執行!
## 事件驅動
1. 事件觸發條件:javascript偵測到的用戶的操作或是頁面的一些行為(怎么發生的)
2. 事件源:引發事件的元素。(發生在誰的身上)
3. 事件處理程序:對事件處理的程序或是函數 (發生了什么事)
## 事件句柄 (Event Handlers)
<table class="dataintable">
<tbody>
<tr>
<th style="width:30%">
屬性
</th>
<th>
此事件發生在何時...
</th>
</tr>
<tr>
<td>
<a target="_top">
onabort
</a>
</td>
<td>
圖像的加載被中斷。
</td>
</tr>
<tr>
<td>
<a target="_top">
onblur
</a>
</td>
<td>
元素失去焦點。
</td>
</tr>
<tr>
<td>
<a target="_top">
onchange
</a>
</td>
<td>
域的內容被改變。
</td>
</tr>
<tr>
<td>
<a target="_top">
onclick
</a>
</td>
<td>
當用戶點擊某個對象時調用的事件句柄。
</td>
</tr>
<tr>
<td>
<a target="_top">
ondblclick
</a>
</td>
<td>
當用戶雙擊某個對象時調用的事件句柄。
</td>
</tr>
<tr>
<td>
<a target="_top">
onerror
</a>
</td>
<td>
在加載文檔或圖像時發生錯誤。
</td>
</tr>
<tr>
<td>
<a target="_top">
onfocus
</a>
</td>
<td>
元素獲得焦點。
</td>
</tr>
<tr>
<td>
<a target="_top">
onkeydown
</a>
</td>
<td>
某個鍵盤按鍵被按下。
</td>
</tr>
<tr>
<td>
<a target="_top">
onkeypress
</a>
</td>
<td>
某個鍵盤按鍵被按下并松開。
</td>
</tr>
<tr>
<td>
<a target="_top">
onkeyup
</a>
</td>
<td>
某個鍵盤按鍵被松開。
</td>
</tr>
<tr>
<td>
<a target="_top">
onload
</a>
</td>
<td>
一張頁面或一幅圖像完成加載。
</td>
</tr>
<tr>
<td>
<a target="_top">
onmousedown
</a>
</td>
<td>
鼠標按鈕被按下。
</td>
</tr>
<tr>
<td>
<a>
onmousemove
</a>
</td>
<td>
鼠標被移動。
</td>
</tr>
<tr>
<td>
<a target="_top">
onmouseout
</a>
</td>
<td>
鼠標從某元素移開。
</td>
</tr>
<tr>
<td>
<a target="_top">
onmouseover
</a>
</td>
<td>
鼠標移到某元素之上。
</td>
</tr>
<tr>
<td>
<a target="_top">
onmouseup
</a>
</td>
<td>
鼠標按鍵被松開。
</td>
</tr>
<tr>
<td>
<a target="_top">
onreset
</a>
</td>
<td>
重置按鈕被點擊。
</td>
</tr>
<tr>
<td>
<a target="_top">
onresize
</a>
</td>
<td>
窗口或框架被重新調整大小。
</td>
</tr>
<tr>
<td>
<a target="_top">
onselect
</a>
</td>
<td>
文本被選中。
</td>
</tr>
<tr>
<td>
<a target="_top">
onsubmit
</a>
</td>
<td>
確認按鈕被點擊。
</td>
</tr>
<tr>
<td>
<a target="_top">
onunload
</a>
</td>
<td>
用戶退出頁面。
</td>
</tr>
</tbody>
</table>
## 綁定事件
1. 在腳本中綁定,通過獲取節點對象進行綁定
~~~
<script type="text/javascript">
var btn = document.getElementById('btn');
btn.onclick = function () {
alert('我被點擊了');
}
</script>
~~~
2. 直接在HTML元素綁定
~~~
<input type="text" onblur="alert('我失去焦點了')">
~~~
>[danger]**作業:**練習各種常用事件。
- 序言
- 第一章:準備工作
- 寫在學習之前的話
- web應用開發結構
- 開發工具/環境
- 第二章:展現層面(HTML/CSS)
- HTML簡介
- HTML基礎
- HTML編碼
- HTML鏈接
- HTML圖像
- HTML列表
- HTML表單
- HTML表格(分水嶺)
- HTML 實體
- HTML框架
- CSS層疊樣式表
- CSS選擇器
- CSS文本/字體
- CSS繼承和疊加
- CSS框模型
- CSS浮動(分水嶺)
- CSS定位
- CSS背景
- CSS圖標字體
- CSS補充
- 開發技巧
- 第三章:展現層面(Javascript)
- JS簡介
- JS實現
- JS輸出交互
- JS變量
- JS數據類型
- JS運算符
- JS流程控制(分水嶺)
- JS函數
- JS數組
- JS對象(分水嶺)
- JS數組對象
- JS字符串對象
- JS數學對象
- JS日期對象
- JS BOM對象(分水嶺)
- JS DOM對象
- JS事件對象
- JS元素對象
- JS DOM節點
- 第四章:展現層面(Jquery)
- JQ簡介
- JQ使用
- JQ選擇器
- JQ篩選
- JQ屬性
- JQ-CSS
- JQ事件
- JQ文檔處理
- JQ效果
- JQ-ajax
- 第五章:邏輯/業務層面(PHP)
- PHP簡介
- PHP變量
- PHP數據類型
- PHP常量
- PHP運算符
- PHP流程控制
- PHP函數(分水嶺)
- PHP日期
- PHP數學
- PHP數組
- PHP字符串
- PHP正則表達式(分水嶺)
- PHP目錄操作
- PHP文件
- PHP上傳/下載
- PHP面向對象(分水嶺)
- PHP圖像處理
- PHP會話控制
- Ajax異步處理
- PHPMysql擴展
- PHPMysqli擴展
- PHPPdo擴展
- PHP接口
- PHP命名空間
- 第六章:邏輯/業務層面(框架設計)
- 第七章:存儲層面(mysql)
- Mysql基礎
- Mysql Sql簡介
- Mysql數據庫
- Mysql數據類型
- Mysql數據表
- Mysql操作記錄
- Mysql查詢
- Mysql修改表結構
- Mysql日期與時間
- Mysql分組統計
- Mysql多表查詢
- Mysql安全
- Mysql存儲引擎
- Mysql事務
- Mysql視圖
- Mysql觸發器
- Mysql存儲過程
- Mysql存儲函數
- Mysql優化
- 第八章:服務器(Linux)
- Linux介紹與安裝
- Shell
- 目錄與文件操作
- VIM編輯器使用
- 帳號管理
- SUDO
- 權限控制
- 壓縮與打包
- 軟件安裝
- 計劃任務
- 進程管理
- 寶塔Linux面板