同级元素,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

5个回答

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

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

weixin_42442449
董晓斌 看你事件绑定是在哪里的,body上的话判定一下target
一年多之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 正确
一年多之前 回复

在标签P的Click里面封装标签Div的事件

搞两个不同的点击事件名

qflyalltime
小羊也疯狂 具体点
一年多之前 回复

看你事件绑定是在哪里的,body上的话判定一下target

给2个div设置css z-index:属性

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!