JavaScript事件

事件流

DOM2级事件流 、事件捕获阶段,目标阶段,事件冒泡阶段

DOM0事件

元素的方法,冒泡阶段被处理,同一种事件只能添加一次,在父节点也能检测到事件代理,dom0是可以检测事件冒泡的

var btn = document.getElementById("myBtn");
btn.onclick = function(event){
  alert(this.id);
}

取消冒泡 event.stopPropagation()
事件在什么阶段 event.eventPhase 1捕获,2目标,3冒泡

DOM2事件

包括捕获,目标,冒泡三个阶段,捕获阶段,第三个参数true代表捕获阶段,false代表冒泡阶段

var btn = document.getElementById("myBtn");
btn.addEventListener("click",function(){
  //

},false);
btn.removeEventListener();//匿名函数无法被取消事件

ie8以及以前

attachEvent(), detachEvent 只支持冒泡,可以添加不同的事件,顺序和DOM2的事件相反

UI事件

load,所有的元素加载后在window上面触发,框架加载完在框架集上面触发,图形加载完毕在img上面触发,嵌入的内容加载完毕在<object>上面触发
unload,页面完全卸载后在页面触发
abort,用户停止下载的时候,如果嵌入的内容没有加载完毕,在object上面触发
error,无法加载的时候

滚动

document.body.scrollHeight

事件模拟

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 事件流 事件冒泡 IE的事件流叫做事件冒泡,即事件开始时由具体的元素接收,然后逐级向上传播到较为不具体的节点。 事...
    soso101阅读 1,715评论 0 1
  • 事件处理程序在应用中是必不可少的,虽然现在很多框架都有自己实现事件处理方法,但是熟知原生才能让我们应对各种各样的需...
    俗三疯阅读 2,555评论 0 1
  • 事件流 事件流描述的是从页面中接受事件的顺序。但是IE和Netscape开发团队提出了差不多相反的事件流的概念。I...
    losspm阅读 1,846评论 0 0
  • 一、事件流 1.1 事件流 事件流:从页面中接受事件的顺序 事件冒泡:即事件开始时由最具体的元素(文档中嵌套层次最...
    范小饭_阅读 4,724评论 1 9
  • JavaScript与HTML之间的交互是通过事件完成的。可以使用事件侦听器来预订事件,正在传统软件工程中被称为观...
    yohn阅读 1,490评论 1 1

友情链接更多精彩内容