zoukankan      html  css  js  c++  java
  • event_1:事件注册

    名词解释

    侦听器:事件处理程序

    事件基础

    1)什么是事件

    // 给元素添加事件,称为注册事件或者绑定事件。
    
    // 有两种方式:传统方式 和 方法监听方式

    2)事件三要素

    事件源  事件类型  事件处理程序
    // 1 获取事件源
    // 2 注册事件( 绑定事件 )
    // 3 添加事件梳理程序 ( 采用函数赋值形式 )

    一  传统方式 [ 注册事件的唯一性 ]

    // 1 利用on开头的事件  onclick
    // . <button onclick = "alert('警示框')"></button>
    // . btn.onclick = function(){}

    特点:注册事件的唯一性
    唯一性:
    同一个元素同一个事件只能设置一个处理函数
    最后注册的处理函数会覆盖掉前面注册的函数

    代码范例

    <button>按钮</button>
    <button>按钮</button>
    <script>
        var btns = document.querySelectorAll('button');
        btns[0].onclick = function () {
            alert('hai');
        }
        btns[0].onclick = function () {
            alert('你好');
        }
        //现在点击 弹出 你好
        //第二个处理函数覆盖了第一个处理函数
    </script> 

    二  事件监听方式 addEventListener();

    1)概念

    // . w3c标准推荐方式 
    // . addEventListener(); 它是一个方法
    // . ie9以前不支持 可以用 attachEvent()代替
    // . 同一个元素同一个事件 可以注册多个监听器
    // . 按注册顺序依次执行

    2)基本语法

    eventTarget.addEventListener(type, listener [,useCapture]);
    // type 表示监听事件类型的字符串
    // listener 事件处理函数 事件发生时,会调用该监听函数
    // useCapture 布尔类型的可选参数 默认是false

    3)代码范例

    <button>按钮</button>
    <script>
        var btns = document.querySelectorAll('button');
        btns[0].addEventListener('click', function () {
            alert('22');
        })
        btns[0].addEventListener('click', function () {
            alert('33');
        })
        // 先弹出 22 然后弹出 33
        // 同一个元素 同一个事件 2个处理函数都执行了
    </script>

    ----------------------------------------------- 只做了解 ----------------------------------------------------------

    attachEvent 事件监听方式

    <button>按钮</button>
    <script>
        var btns = document.querySelectorAll('button');
        btns[2].attachEvent('onclick', function() {
            alert(11);
        })
    </script> 
    ie9以前的浏览器才支持
    ie9以上的浏览器都不支持
    其他浏览器都不支持
      
  • 相关阅读:
    微信小程序开发---各代码文件简介
    LeetCode71. 简化路径
    LeetCode70. 爬楼梯
    LeetCode69. x 的平方根
    LeetCode68. 文本左右对齐
    LeetCode剑指 Offer 09. 用两个栈实现队列
    LeetCode67. 二进制求和
    LeetCode66. 加一
    LeetCode65. 有效数字
    LeetCode64. 最小路径和
  • 原文地址:https://www.cnblogs.com/fuyunlin/p/14435475.html
Copyright © 2011-2022 走看看