码迷,mamicode.com
首页 > 其他好文 > 详细

事件的绑定以及兼容代码

时间:2019-09-10 00:20:35      阅读:86      评论:0      收藏:0      [点我收藏+]

标签:判断   function   style   覆盖   --   code   方式   lse   浏览器   

1. 事件的绑定:为同一个元素绑定多个相同的事件

2. 三种方式

(1)对象.on事件名字=事件处理函数

my$("btn").onclick=function(){};

如果是多个相同事件注册用这种方式,最后一个执行,之前的被覆盖了

(2) 对象.addEventListener("没有on的事件名字",事件处理函数,false);

  --谷歌和火狐支持,IE8不支持

  my$("btn").addEventListener("click",function(){},false);

  参数1:事件的类型---事件的名字,没有on
  参数2:事件处理函数---函数(命名函数,匿名函数)
  参数3:布尔类型,目前就写false

//为同一个元素绑定多个相同的事件
 my$("btn").addEventListener("click",function () {
   console.log("你好啊");
 },false);
 my$("btn").addEventListener("click",function () {
   console.log("你吃饭了吗");
 },false);

 

(3)对象.attachEvent("有on的事件名字",事件处理函数);

  --谷歌不支持,火狐不支持,IE8支持

  参数1:事件类型---事件名字,有on
  参数2:事件处理函数---函数(命名函数,匿名函数)

  my$("btn").attachEvent("onclick",function(){});

 my$("btn").attachEvent("onclick",function () {
   console.log("小杨好帅哦1");
 });

 my$("btn").attachEvent("onclick",function () {
   console.log("小杨好帅哦2");
 });

3.兼容代码

//为任意元素.绑定任意的事件, 任意的元素,事件的类型,事件处理函数
  function addEventListener(element,type,fn) {
    //判断浏览器是否支持这个方法
    if(element.addEventListener){
      element.addEventListener(type,fn,false);
    }else if(element.attachEvent){
      element.attachEvent("on"+type,fn);
    }else{
      element["on"+type]=fn;
    }
  }

 

事件的绑定以及兼容代码

标签:判断   function   style   覆盖   --   code   方式   lse   浏览器   

原文地址:https://www.cnblogs.com/zhangDY/p/11494886.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!