点击label时click事件被触发两次问题

击label的时候,事件冒泡一次,同时会触发关联的input的click事件,导致事件再次冒泡;
解决办法:

document.getElementById("labelId").onclick = function (e) {
     var ev = e || window.event;
     var elm = ev.target || ev.srcElement;
     if (elm.tagName.toLowerCase() === 'label') { return; }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  •   JavaScript 与 HTML 之间的交互是通过事件实现的。   事件,就是文档或浏览器窗口中发生的一些特...
    霜天晓阅读 3,526评论 1 11
  • 问题描述 最近在做项目是遇到自定义checkbox多选需求,点击label时,触发了两次点击事件 页面元素 点击事...
    瓜田猹阅读 7,244评论 0 1
  • JavaScript 与 HTML 之间的交互是通过事件实现的。事件,就是文档或浏览器窗口中发生的一些特定的交互瞬...
    LemonnYan阅读 697评论 0 4
  • 问题描述 在项目中遇到一个bug——label标签上绑定了一个返回一层的点击事件,然鹅每次点击都会返回两层!! 经...
    Apollozz阅读 6,384评论 0 2
  • JavaScript 程序采用了异步事件驱动编程模型。在这种程序设计风格下,当文档、浏览器、元素或与之相关的对象发...
    劼哥stone阅读 1,274评论 3 11