zoukankan      html  css  js  c++  java
  • javascript的事件流模型都有什么?

    事件流:当你在页面触发一个点击事件后,页面上不仅仅有一个元素响应该事件而是多个元素响应同一个事件,因为元素是在容器中的。事件发生的顺序就是事件流,不同的浏览器对事件流的处理不同。

    冒泡事件流:

    当触发一个节点的事件时,会从当前节点开始,依次触发其祖先节点的同类型事件,直到DOM根节点 。

    捕获事件流:

    当触发一个节点的事件时,会从DOM根节点开始,依次触发其祖先节点的同类型事件,

    知道当前节点自身 。

    DOM事件流:

    dom同时支持两种事件模型,但捕获性事件先开始,从document开始也结束于document,dom模型的独特之处在于文本也可以触发事件。

    什么时候是事件冒泡?事件捕获?

    当使用addEventListener绑定事件,第三个参数设为true时表示事件捕获,除此之外的所有事件均为事件冒泡。

    广州品牌设计公司https://www.houdianzi.com PPT模板下载大全https://redbox.wode007.com

    阻止事件冒泡
    ①IE10之前,使用e.cancelBubble = true;

    ②IE10之后,使用 e.stopPropagation();

    function myParagraphEventHandler(e) {
         e = e || window.event;     
         if (e.stopPropagation) {
               e.stopPropagation(); //IE10之后 
         } else {         
              e.cancelBubble = true; //IE10之前     
        } 
    }

     

    阻止默认事件
    ①IE10之前:e.returnValue = false;

    ②IE10之后:e.stopPropagation();

    function eventHandler(e) {
       e = e || window.event;
       // 防止默认行为   
       if (e.preventDefault) {  
           e.preventDefault(); //IE10之外   
       }else { 
           e.returnValue = false; //IE10之前   
      } 
    }
  • 相关阅读:
    抽象类于接口
    继承
    分布式爬虫基于scrapy
    nginx wsgi django 建站配置最终版
    scrapy crawlspider内置方法源码
    redis数据的安装以及基本使用方法
    CrawlSpider 用法(页面链接提取解析 例如:下一页)
    请求传参
    日志等级
    代理操作
  • 原文地址:https://www.cnblogs.com/qianxiaox/p/14085684.html
Copyright © 2011-2022 走看看