[DOM Event Learning] Section 2 概念梳理 什么是事件 DOM Event
生活随笔
收集整理的這篇文章主要介紹了
[DOM Event Learning] Section 2 概念梳理 什么是事件 DOM Event
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
[DOM Event Learning] Section 2 概念梳理 什么是事件 DOM Event
事件
事件(Event)是用來通知代碼,一些有趣的事情發生了. 每一個Event都會被一個Event對象所表示,這個對象可能還會有一些自定義的字段或者方法,來獲取發生什么事情的更多信息. Event對象實現了Event接口(https://developer.mozilla.org/en-US/docs/Web/API/Event). ? 事件可以是任何事情,從最基本的用戶交互,到rendering model中自動發生的一些事情. 有一些官方規范中的標準事件,也有一些特定瀏覽器使用的內部事件. 各種事件可以參考:?https://developer.mozilla.org/en-US/docs/Web/Events ?事件處理器
要在某個對象發生某個事件(比如一個a標簽被點擊)的時候得到通知,可以為這個對象的這個事件指定一個event handler. 指定方法: 1.用元素名為on{eventtype}的HTML屬性, 比如: <button onclick="return handleClick(event);">?
2.用JavaScript選取元素,設置對應的onXXX屬性,比如: document.getElementById("mybutton").onclick = function(event) { ... }.?
更現代的瀏覽器可以用addEventListener()方法:?https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener 但是這個方法不兼容IE9之前的瀏覽器. 如果用jQuery來注冊監聽,框架會幫我們處理瀏覽器的兼容性問題. 具體的各種注冊監聽的方式, 上一篇博文中有總結:http://www.cnblogs.com/mengdd/p/4354339.html ? Event handler可以設置在HTML元素上,也可以設置在其他產生事件的對象上,比如window, document, XMLHttpRequest等. 因為歷史原因,一些<body>和<frameset>上的屬性實際是在它們的Window對象上設置event handler. 比如:onblur, onerror, onfocus, onload, onscroll. ?事件對象
在時間被觸發的時候,回調方法接收一個事件對象作為參數. 這樣你在處理的時候,可以知道當前是什么事件(type), 它的target, 以及相關的事件參數. Event是一個接口, 它有一些公共的屬性和方法. 各種具體的事件接口(比如MouseEvent, KeyboardEvent)都是Event的子類. ? 事件屬性列表:?https://developer.mozilla.org/en-US/docs/Web/API/Event#Properties ? 事件對象的方法中: event.stopPropagation()?會阻止當前事件的進一步傳播. event.preventDefault() 會取消可以取消的事件, 但是不阻止事件的進一步傳播. preventDefault()用來阻止一些默認的行為發生. ? ?參考資料:
W3C Doc:?https://dvcs.w3.org/hg/dom3events/raw-file/tip/html/DOM3-Events.html Event Developer Guide:?https://developer.mozilla.org/en-US/docs/Web/Guide/Events learn jQuery Events:?http://learn.jquery.com/events/ Mozilla Event reference:?https://developer.mozilla.org/en-US/docs/Web/Events Event Handler:?https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Event_handlers ? ?博客文章:http://chajn.org/project/javascript-events-responding-user/
轉載于:https://www.cnblogs.com/liu-Gray/p/4810186.html
總結
以上是生活随笔為你收集整理的[DOM Event Learning] Section 2 概念梳理 什么是事件 DOM Event的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: centos 6.5 安装 redis
- 下一篇: Navicat导出表结构