zoukankan      html  css  js  c++  java
  • day03—JavaScript中DOM的Event事件方法

    转行学开发,代码100天——2018-03-19

    1、Event 对象

    Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。

    事件通常与函数结合使用,函数不会在事件发生前被执行!

    2、常用的event属性有:

    type                          //返回当前 Event 对象表示的事件的名称。

    target                       //返回触发此事件的元素(事件的目标节点)

    3、常用的event方法有:

    initEvent()                //初始化新创建的 Event 对象的属性

    stopPropagation()   //通知浏览器不要执行与事件关联的默认动作。即阻止事件冒泡

    preventDefault()      //不再派发事件。即阻止默认事件

    <!DOCTYPE html>
    <html>
    <head>
        <title>事件流</title>
    </head>
    <body>
      <div id="div">
          <button id="btn">按钮</button>
          <a href="http://www.baidu.com" id="aid">百度</a>
      </div>
      
      <script type="text/javascript">
          document.getElementById("btn").addEventListener("click",showType);
          document.getElementById("div").addEventListener("click",showDiv);
          document.getElementById("aid").addEventListener("click",showA);
    
          function showType(event)
          {
              alert(event.bubbles);//事件为冒泡事件,返回值为true
              alert(event.type); //返回类型为click
              alert(event.target); //返回[object HTMLButtonElement]
              event.stopPropagation();//阻止事件冒泡
          }
          function showDiv()
          {
              alert("div");
          }
          function showA(event)
          {
              event.stopPropagation();//阻止冒泡事件
              event.preventDefault(); //阻止a标签默认行为,即点击a标签时,不会跳转到相应网址
    
          }
      </script>
    </body>
    </html>

    注意:事件传播

    在 2 级 DOM 中,事件传播分为三个阶段:

    第一阶段捕获阶段。事件从 Document 对象沿着文档树向下传递给目标节点。如果目标的任何一个先辈专门注册了捕获事件句柄,那么在事件传播过程中运行这些句柄。

    第二个阶段发生在目标节点自身。直接注册在目标上的适合的事件句柄将运行。这与 0 级事件模型提供的事件处理方法相似。

    第三阶段起泡阶段。在此阶段,事件将从目标元素向上传播回或起泡回 Document 对象的文档层次。

    心未老,即奋不顾身!
  • 相关阅读:
    JS常用数值验证
    JS遍历对象的属性和值
    SpringBoot解决特殊符号 []报400问题
    postman工具的用法
    SpringBoot使用谷歌方式生成图片验证码
    hibernate配置多对多ORM映射关系
    hibernate配置一对多ORM映射关系
    Class文件结构
    垃圾收集器与内存分配策略
    hibernate持久化类和一级缓存
  • 原文地址:https://www.cnblogs.com/allencxw/p/8605971.html
Copyright © 2011-2022 走看看