博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
点击事件在label标签执行2次解决办法
阅读量:5311 次
发布时间:2019-06-14

本文共 773 字,大约阅读时间需要 2 分钟。

 

这是前段时间的事,今天有人问我,便想着要记下来,以下叙述不仅针对普通的click事件也适用,对于使用哪种框架也可以。

事件传递方式有2种:事件捕获和事件冒泡。事件会从父元素传到子元素,再从子元素传到父元素,如果事件绑定发生在父元素传到子元素的过程中,则称为事件捕获传递,如果事件绑定发生在子元素传到父元素的阶段,则称为事件冒泡传递。

 

第一种解决办法:

1:e.stopPropagation;

一般情况都是使用的这个,节点上处理该事件的处理程序将被调用,事件不会影响其他节点。

2:e.preventDefault;

通知浏览器不要执行与事件关联的默认动作。

$('input').click(function(e){    console.log('input_click');    e.stopPropagation();//阻止其继续冒泡})

 

 

第二种解决办法:

用时间戳来解决,我平常多于这个方法,

因为e.stopPropagation有的时候在繁杂函数或者函数与函数直接有共同的关联会影响其操作元素。

如下:

 

1  var tab = $('#entr_click1,#entr_click2');//获取ID2     tab.click(function(){3         var index = tab.index(this);4         var now = +new Date();5         if (now - evTimeStamp < 100) {6            //操作事件元素......7         }8         evTimeStamp = now;9     });

 

转载于:https://www.cnblogs.com/ws3366/p/7126476.html

你可能感兴趣的文章
http://www.bootcss.com/
查看>>
20145308 《网络对抗》 注入shellcode+Return-to-libc攻击 学习总结
查看>>
将多张图片和文字合成一张图片
查看>>
自己动手写ORM(01):解析表达式树生成Sql碎片
查看>>
如何使用USBWebserver在本机快速建立网站测试环境
查看>>
变量提升
查看>>
[Flex] flex手机项目如何限制横竖屏?只允许横屏?
查看>>
tensorflow的graph和session
查看>>
JavaScript动画打开半透明提示层
查看>>
Mybatis生成resulteMap时的注意事项
查看>>
jquery-jqzoom 插件 用例
查看>>
1007. Maximum Subsequence Sum (25)
查看>>
图片生成缩略图
查看>>
查看oracle数据库的连接数以及用户
查看>>
【数据结构】栈结构操作示例
查看>>
三.野指针和free
查看>>
activemq5.14+zookeeper3.4.9实现高可用
查看>>
TCP/IP详解学习笔记(3)IP协议ARP协议和RARP协议
查看>>
简单【用户输入验证】
查看>>
python tkinter GUI绘制,以及点击更新显示图片
查看>>