首页 >web前端 >html教程 >这个问题怎么解?_html/css_WEB-ITnose

这个问题怎么解?_html/css_WEB-ITnose

WBOY
WBOY原创
2016-06-24 11:36:071010浏览

DIV内有两个IMG 标签,该DIV和里面的两个IMG都有响应onclick消息,现在问题是单击里面的IMG标签,外层DIV的onclick也被调用了。要怎么改 才能保证 单击里面的IMG标签不会执行外层DIV的onclick消息。


回复讨论(解决方案)

写成这样的结构

<div onclick=""></div><div><img  onclick="" alt="这个问题怎么解?_html/css_WEB-ITnose" ><img  onclick="" alt="这个问题怎么解?_html/css_WEB-ITnose" ></div>

然后用css控制就行了

阻止冒泡 http://lj830723.iteye.com/blog/1452280

写成这样的结构

<div onclick=""></div><div><img  onclick="" alt="这个问题怎么解?_html/css_WEB-ITnose" ><img  onclick="" alt="这个问题怎么解?_html/css_WEB-ITnose" ></div>

然后用css控制就行了



亲,写成这样 页面布局就改了。DIV内也不只是两个IMG的,还有很多其它标签。

阻止冒泡 http://lj830723.iteye.com/blog/1452280



function stopPropagation(e) {
    e = e || window.event;
    if (e.stopPropagation) { //W3C阻止冒泡方法  
        e.stopPropagation();
    } else {
        e.cancelBubble = true; //IE阻止冒泡方法  
    }
}  
function openchat(e,vId) {
    stopPropagation(e);
}

刚试了下,还是不行。因为onclick是我要传一个ID进行。代码如上


写成这样的结构

<div onclick=""></div><div><img  onclick="" alt="这个问题怎么解?_html/css_WEB-ITnose" ><img  onclick="" alt="这个问题怎么解?_html/css_WEB-ITnose" ></div>

然后用css控制就行了



亲,写成这样 页面布局就改了。DIV内也不只是两个IMG的,还有很多其它标签。

你只把这两个img标签独立出来就行了啊,用绝对定位放在div上面。我是这样想得,感觉应该可以。


阻止冒泡 http://lj830723.iteye.com/blog/1452280



function stopPropagation(e) {
    e = e || window.event;
    if (e.stopPropagation) { //W3C阻止冒泡方法  
        e.stopPropagation();
    } else {
        e.cancelBubble = true; //IE阻止冒泡方法  
    }
}  
function openchat(e,vId) {
    stopPropagation(e);
}

刚试了下,还是不行。因为onclick是我要传一个ID进行。代码如上 既然函数的event不能用,那你就用 window的event嘛,你就不要把e传进去,里面的方法就会取window的event了。也就是你这方法还是只接受一个参数,就是你传的id:
function stopPropagation(e) {    e = e || window.event;    if (e.stopPropagation) { //W3C阻止冒泡方法          e.stopPropagation();    } else {        e.cancelBubble = true; //IE阻止冒泡方法      }}  function openchat(vId) {    stopPropagation();}
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn