小羊也疯狂 2018-06-12 03:44 采纳率: 100%
浏览 3128
已采纳

同级元素,p遮挡div,两个都绑定了click事件,如何使click只触发div不触发p

图片说明
这个感觉和冒泡没啥关系

 p.onclick=function (e) {
        console.log('p is clicked')
    }
    div.onclick=function (e) {
        console.log('div is clicked')
    }
    document.body.onclick=function (e) {
        console.log(e.target.nodeName)
        if(e.target.nodeName==='DIV'){
            console.log('this is message bubbling form div')
        }
    }

用body接受冒泡都没有,e.target.nodeName始终是p不是div

  • 写回答

4条回答

  • Go 旅城通票 2018-06-12 04:09
    关注

    不可能的,只能是触发当前点击到的元素。。。你要触发底部的,自己依据点击的坐标判断那个元素是否在范围内,在就触发对应的事件

    DEMO:javascript获取遮盖层被点击时下面的DOM对象

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置