• JS---DOM---为元素绑定事件的引入,为元素绑定多个代码,兼容代码


    1. 为元素绑定事件的引入:

    用src直接绑定多个,只实现最后一个(programmer2.js)

    <input type="button" value="按钮" id="btn"/>
    <script src="common.js"></script>
    <script src="programmer1.js"></script>
    <script src="programmer2.js"></script>
    <script>
    
    
      my$("btn").onclick=function () {
        console.log("小杨好帅哦");
      };
    </script>

    2. 为元素绑定多个事件

    为元素绑定事件(DOM) :一种, 但是不兼容, 所以还是有两种

    1. 对象.addEventListener("事件类型", 事件处理函数, false); ----->谷歌和火狐支持, IE8不支持
    2. 对象.attachEvent("有on的事件类型", 事件处理函数)  ----->谷歌不支持, 火狐不支持, IE8支持
     
     
     
     

    2.1 对象.addEventListener("事件类型", 事件处理函数, false); ----->谷歌和火狐支持, IE8不支持

     
    案例:为按钮绑定点击事件
    1.   参数1:事件的类型---事件的名字,没有on
    2.   参数2:事件处理函数---函数(命名函数,匿名函数)
    3.   参数3:布尔类型,目前就写false
        //为同一个元素绑定多个相同的事件--
        my$("btn").addEventListener("click", function () {
          console.log("小苏猥琐啊");
        }, false);
        my$("btn").addEventListener("click", function () {
          console.log("小苏龌龊啊");
        }, false);
        my$("btn").addEventListener("click", function () {
          console.log("小苏邪恶啊");
        }, false);
        my$("btn").addEventListener("click", function () {
          console.log("小苏下流啊");
        }, false);

    2.2 对象.attachEvent("有on的事件类型", 事件处理函数)  ----->谷歌不支持, 火狐不支持, IE8支持

    1.   参数1:事件类型---事件名字,有on
    2.   参数2:事件处理函数---函数(命名函数,匿名函数)
        my$("btn").attachEvent("onclick", function () {
          console.log("小杨好帅哦1");
        });
    
        my$("btn").attachEvent("onclick", function () {
          console.log("小杨好帅哦2");
        });
    
        my$("btn").attachEvent("onclick", function () {
          console.log("小杨好帅哦3");
        });

    3. 为元素绑定事件的兼容代码

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>title</title>
    
    </head>
    <body>
    <input type="button" value="按钮" id="btn"/>
    <script src="common.js"></script>
    <script>
    
      //为任意元素.绑定任意的事件, 任意的元素,事件的类型,事件处理函数
      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;
        }
      }
    
      addEventListener(my$("btn"),"click",function () {
        console.log("哦1");
      });
      addEventListener(my$("btn"),"click",function () {
        console.log("哦2");
      });
      addEventListener(my$("btn"),"click",function () {
        console.log("哦3");
      });
    
    
    </script>
    </body>
    </html>
  • 相关阅读:
    .ellipsis 超过的部分显示省略号
    js 里面上一页和下一页
    CSS让你的IE浏览器崩溃(Crash your IE)作者:雪候鸟 来源: 风雪之隅
    元素居中显示
    jquery Carousel
    tabs 选择加载
    弹出窗
    下拉广告`
    opacity
    小波分析实验: 实验1 连续小波变换
  • 原文地址:https://www.cnblogs.com/jane-panyiyun/p/12000014.html
Copyright © 2020-2023  润新知