一、事件绑定

1、on+事件类型

      var div = document.getElementById('dv')// 1 on+事件类型 (同一点击事件只能绑定一次,绑定多次以最后一次为准)div.onclick = () => {console.log('click1');}div.onclick = () => {console.log('click2');}

2、addEventListener(事件类型,事件处理函数)

// 2 addEventListener(事件类型,事件处理函数) 同一事件可绑定多个事件处理函数,从上往下执行// 低版本ie中不可用div.addEventListener('click',()=>{console.log('addEventListener1次');})div.addEventListener('click',()=>{console.log('addEventListener2次');})

3、attachEvent(on+事件类型,事件处理函数)

// 3 attachEvent(on+事件类型,事件处理函数)// 在ie11中,不支持// 在ie9/10中,支持,从上往下处理函数// 在ie8中,不支持也不反对,点击无反应// 在ie5/7中,支持,从下往上处理函数div.attachEvent('onclick',function(){console.log('attachEvent1次');})div.attachEvent('onclick',function(){console.log('attachEvent2次');})

4、封装兼容性的元素事件绑定

      // 封装兼容性的元素事件绑定function bindEvent(ele,type,fn) {try{ele.addEventListener(type,fn)}catch(error){ele.attachEvent('on'+type,fn)}}function f1(){console.log('f1');}function f2(){console.log('f2');}function f3(){console.log('f3');}function f4(){console.log('f4');}div.addEventListener('click',f1)div.addEventListener('click',f2)div.addEventListener('click',f3)div.addEventListener('click',f4)div.attachEvent('onclick',f3)div.attachEvent('onclick',f4)

5、取消绑定的事件函数

   // 取消绑定的事件函数// removeEventListener(事件,处理函数)div.removeEventListener('click',f1) // 低版本ie不支持// detachEvent(事件,函数)div.detachEvent('onclick',f3)  // 低版本ie支持

6、取消绑定的事件函数(封装)

      // 封装兼容性的元素解除事件绑定function reEvent(ele,type,fn) {try{ele.removeEventListener(type,fn)}catch(error){ele.detachEvent('on'+type,fn)}}reEvent(div,'click',f1)

7、关于绑定的匿名事件函数

JS中的事件绑定、取消、兼容问题相关推荐

  1. vue.js中的事件绑定-01笔记

    之前发生了一个错误,事件绑定一直不成功,就是下面的错误代码 <div id="app">当前计数:{{count}}<button v-if="0&qu ...

  2. 前端学习(3207):js中的事件绑定

  3. JS之事件处理(一)--事件概述、非IE浏览器/IE浏览器中的事件绑定、解决浏览器事件绑定兼容性问题

    一.概述 描述:事件本质是一种交互操作,事件通常与函数配合使用,当事件发生时函数才会执行 事件是由三部分组成的:事件源 事件类型 事件处理程序 事件源:事件被触发的对象–谁 事件类型:如何触发 什么事 ...

  4. JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象

       前   言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学, ...

  5. JS中的事件基础知识

    本文首发于个人博客:www.wyb.plus JS作为一门事件驱动型的语言,了解与事件有关的知识是十分必要的. JS中与事件有关的概念非常多,本文尽量整理完善. 作者:王雨波 qq:760478684 ...

  6. 初识 Vue(11)---(Vue 中的事件绑定)

    Vue 中的事件绑定 案例:点击 Hello World ,从黑变红,再次点击,从红变黑... 通过 class 来实现 页面效果的变更 方法一:(通过对象)对象绑定 ​​<!DOCTYPE h ...

  7. JavaScript系列—简述JS中的事件委托和事件代理

    JS中的事件委托和事件代理 什么是事件委托? 事件委托还有一个名字叫事件代理,JS高程上讲:事件委托就是利用事件冒泡,只制定一个时间处理程序,就可以管理某一类型的所有事件.我用取快递来解释这个现象: ...

  8. js中hover事件时候的BUG以及解决方法

    js中hover事件时候的BUG以及解决方法 参考文章: (1)js中hover事件时候的BUG以及解决方法 (2)https://www.cnblogs.com/mmykdbc/p/7464050. ...

  9. JS中常遇到的浏览器兼容问题和解决方法

    JS中常遇到的浏览器兼容问题和解决方法 参考文章: (1)JS中常遇到的浏览器兼容问题和解决方法 (2)https://www.cnblogs.com/wws-bk/p/9770834.html 备忘 ...

最新文章

  1. HDOJ 1166 敌兵布阵
  2. 【星球知识卡片】人脸属性编辑都有哪些核心知识点,如何长期进行学习
  3. php mongodb连接数据库,PHP下 Mongodb 连接远程数据库的实例代码
  4. 震惊!递推与递归竟然可以这么编!%99的程序员都不知道!
  5. 1034. 有理数四则运算(20)
  6. AntDesign组件库的使用
  7. bzoj 3513: [MUTC2013]idiots FFT
  8. jdk-14.0.2_linux-x64_bin.tar.gz
  9. [原创]ASP.net 2.0 ObjectDataSource 应用操作代码实例(1)-—访问SQL2005
  10. ZOJ-2575 Full of Painting 动态规划
  11. [小笔记]TypeScript/JavaScript映射两组数据
  12. 智慧城市解决方案(智慧城市系统及相关技术)
  13. 关于计算机科学的publication(zz南大小百合)
  14. os系统服务器防火墙怎么关闭,mac防火墙如何关闭
  15. CANoe.DiVa操纵指南——CANoe.DiVa配合vTestStudio进行高覆盖的测试
  16. 声网 SDK 接入以及音视频通话应用开发指南
  17. 1355 斐波那契的最小公倍数
  18. C语言注释风格(函数、功能、输入、输出、返回)
  19. Android热修复之AndFix
  20. 虚拟化及vmware产品介绍

热门文章

  1. 华为nova7 se鸿蒙系统,华为nova7 SE评测:后置6400万高清影像系统 定格美的方方面面...
  2. use strict 使用方法-简单说
  3. 端口8080被占用两种解决方法
  4. Js日期格式 yy-mm-dd
  5. 怎么核对姓名、银行卡、身份证是不是同一个人?
  6. EF Core :IQueryable的延迟执行
  7. 大周建议新手看完收藏,修改昵称会影响推荐量?都是避坑点
  8. linux ms漏洞,Samba MS-SAMR/MS-LSAD中间人攻击漏洞(CVE-2016-2118)
  9. 安卓系统开机动画制作
  10. 【BZOJ4373】算术天才⑨与等差数列