如何阻止事件冒泡和默认事件(阻止事件冒泡和默认事件的方法)

如何阻止事件冒泡和默认事件,阻止事件冒泡和默认事件的方法内容导航:javascript如何阻止事件冒泡和默认行为什么是事件冒泡javascript的事件冒泡如何阻止事件捕获和事件冒泡以及如何阻止冒泡事件和默认事件一、javascript如何阻止事件冒泡和默认行为js阻止冒泡在阻止冒泡的过程中,W3C和IE采用的不同的方法,那么我们必

如何阻止事件冒泡和默认事件,阻止事件冒泡和默认事件的方法

内容导航:

  • javascript如何阻止事件冒泡和默认行为
  • 什么是事件冒泡
  • javascript 的事件冒泡如何阻止
  • 事件捕获和事件冒泡以及如何阻止冒泡事件和默认事件
  • 一、javascript如何阻止事件冒泡和默认行为

    js阻止冒泡 在阻止冒泡的过程中,W3C和IE采用的不同的方法,那么我们必须做以下兼容。 复制代码 代码如下: function stopPro(evt){
    var e = evt || ; //returnValue如果设置了该属性,它的值比事件句柄的返回值优先级高。把这个属性设置为 fasle,
    //可以取消发生事件的源元素的默认动作。 //?ue = false:fault(); ?ble=true:gation(); }

    二、什么是事件冒泡

    事件冒泡:点击一个链接,触发绑定在链接上的click事件,进而触发到这元素的click事件事件冒泡阶段:事件从事件目标(target)开始,往上冒泡直到页面的最上一级标签。
    假设一个元素div,它有一个下级元素p。

    元素

    这两个元素都绑定了click事件,如果用户点击了p,它在div和p上都触发了click事件,那这两个事件处理程序哪个先执行呢?事件顺序是什么?两种模型以前,netscape和microsoft是不同的实现方式。
    netscape中,div先触发,这就叫做事件捕获。
    microsoft中,p先触发,这就叫做事件冒泡。
    两种事件处理顺序刚好相反。
    ie只支持事件冒泡,mozilla, opera 7 和 konqueror两种都支持,旧版本的opera’s 和 icab两种都不支持 。
    事件捕获当你使用事件捕获时,父级元素先触发,子级元素后触发,即div先触发,p后触发。
    事件冒泡当你使用事件冒泡时,子级元素先触发,父级元素后触发,即p先触发,div后触发。
    w3c模型w3c模型是将两者进行中和,在w3c模型中,任何事件发生时,先从顶层开始进行事件捕获,直到事件触发到达了事件源元素。
    然后,再从事件源往上进行事件冒泡,直到到达document。
    程序员可以自己选择绑定事件时采用事件捕获还是事件冒泡,方法就是绑定事件时通过apeventlistener函数,它有三个参数,第三个参数若是true,则表示采用事件捕获,若是false,则表示采用事件冒泡。
    stener(‘click’,dosomething2,true)true=捕获false=冒泡传统绑定事件方式在一个支持w3c
    dom的浏览器中,像这样一般的绑定事件方式,是采用的事件冒泡方式。
    =
    dosomething2ie浏览器如上面所说,ie只支持事件冒泡,不支持事件捕获,它也不支持apeventlistener函数,不会用第三个参数来表示是冒泡还是捕获,它提供了另一个函数attachevent。
    nt(“onclick”,
    dosomething2);附:事件冒泡(的过程):事件从发生的目标(t||)开始,沿着文档逐层向上冒泡,到document为止。
    事件的传播是可以阻止的:? 在w3c中,使用stoppropagation()方法? 在ie下设置cancelbubble =
    true;在捕获的过程中stoppropagation();后,后面的冒泡过程也不会发生了~3.阻止事件的默认行为,例如click 后的跳转~?
    在w3c中,使用preventdefault()方法;? 在ie下设置ue = false;

    三、javascript 的事件冒泡如何阻止

    答:1、cancelBubble(HTMLDOMEvent对象属性):如果事件句柄想阻止事件传播到包容对象,必须把该属性设为true。2、stopPropagation(HTMLDOMEvent对象方法):终止事件在传播过程的捕获、目标处理或起泡阶段进一步传播。调用该方法后,该节点上处理该事件的处理程序将被调用,事件不再被分派到其他节点。3、preventDefault(HTMLDOMEvent对象方法)通知浏览器不要执行与事件关联的默认动作。例子:functionstopBubble(e){if(e&&opPropagation)opPropagation()elsencelBubble=true}把这个stopBubble(e)函数放到你想要的阻止事件冒泡函数里面就可以阻止事件冒泡了。希望能帮助到你。

    四、事件捕获和事件冒泡以及如何阻止冒泡事件和默认事件

    在 IE 下, 可以用 ble = true 来阻止事件向上冒泡. FireFox 下则可以用 gation() 来阻止事件冒泡.

    版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/114934.html

    (0)
    robot
    上一篇 2022-04-27
    下一篇 2022-04-27

    相关推荐

    • 怎么选择优质配置的美国服务器

      选择优质配置的美国服务器可以通过以下几点来进行选择:确定需求:首先要确定自己的需求,包括网站流量、数据存储、处理能力等方面的需求。网络质量:选择一个网络质量好、稳定的服务商,确保服务器能够稳定运行。数据中心位置:选择位于美国主要城市或者网络枢纽的数据中心,能够提供更好的网络连接速度和稳定性。服务器配置:选择配置高、性能稳定的服务器,可以更好地满足网站需求。技术支持:选择一个提供24/7技术支持的服

      2024-04-11
      0
    • 如何备案身份证(身份证备案表是什么)

      如何备案身份证,身份证备案表是什么内容导航:我今天身份证丢了要到派出所备案吗身份证信息泄露可以备案吗备案用的身份证和备案地的关系一分钟学会如何快速的用微信办理身份证一、我今天身份证丢了要到派出所备案吗身份证起丢贵重物品用报警避免必要麻烦登报公告报纸收身份证补办身份证丢失补办应户口所派所必须本办二代身份证补办

      2022-05-05
      0
    • mysql幻读的使用场景有哪些

      当多个事务同时操作同一张表时,其中一个事务进行了插入或者删除操作,而另一个事务在此时进行查询操作,可能会出现幻读的情况。当一个事务对某个范围的数据进行了查询操作,同时另一个事务在该范围内进行了插入或者删除操作,可能会导致幻读。在多版本并发控制(MVCC)的数据库系统中,读取的数据可能是历史版本的数据,而另一个事务在此时更新了数据,可能会导致幻读。当一个事务对某个表进行了批量操作,而另一个事务在此时

      2024-04-24
      0
    • numpy怎么删除指定元素

      使用NumPy库中的delete()函数可以删除指定的元素。delete()函数的用法如下:numpy.delete(arr, obj, axis=None)其中,arr是要操作的数组,obj是要删除的元素的索引或切片对象,axis是要删除的轴。如果axis未指定,则将数组展开为一维数组,然后删除指定的元素。下面是一个示例,演示了如何使用delete()函数删除指定的元素:import nu

      2024-01-31
      0
    • php中replace函数的作用是什么

      在PHP中,replace函数的作用是替换字符串中的指定字符或模式。具体来说,replace函数用于在字符串中查找指定的字符或模式,并将其替换为指定的新字符或模式。replace函数的语法如下:string replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )参数说明:$search:要搜索和替

      2024-01-25
      0
    • 超链接有什么作用(超链接是干什么用的)

      超链接有什么作用,超链接是干什么用的内容导航:什么是超链接有什么作用超链接有什么作用word中的超链接和宏有什么作用logo上添加超链接有什么作用一、什么是超链接有什么作用超链接简单来讲就是指按内容链接,它是一种允许我们同其他对象进行连接的元素。一个完整的超链接包括链

      2022-04-30
      0