2016-07-15 49 views
2

全部 现在我定义了一个更改点击复选框,当chexkbox检查时,我会显示一个提示,我也定义点击我的HTML,当我点击到处时,我会隐藏一个提示,但我的问题就是当我检查的复选框,提示没有在IE中显示,我 经过调试,我发现身体点击是触发,它是一个冒泡事件?我试着写在IE浏览器冒泡事件

window.event ? window.event.cancelBubble = true : e.stopPropagation();

,但它不起作用,身体点击仍在IE中触发,在Google中没有这个问题,怎么样处理呢?

$(document).on("change", ".checked", function (self) { 
 
    $(".circle_bot").show(); 
 
    window.event ? window.event.cancelBubble = true : e.stopPropagation(); 
 
} 
 
       
 
$("body").click(function() { 
 
     $(".circle_bot").hide(); 
 
    });
<body> 
 
    ... 
 
    <div class="circle_bot"></div> 
 
    ... 
 
<input type="checkbox" class="checked"/> 
 
</body>

我只想触发检查一下,是不是chenced复选框,当触发体点击。

+0

请按照[mcve] – charlietfl

+0

显示所有相关的代码嗨,我写我的代码,谢谢你的样子,是否有任何解决方案来处理它? – zhang

回答

2

您可以检查哪些点击的目标是,做类似:

$("body").click(function(event) { 
    // don't do anything if checkbox clicked 
    if (!$(event.target).is('.checked')) { 
    $(".circle_bot").hide(); 
    } 
}); 

注意,在jQuery的所有事件处理程序提供event对象,所以你不必看是否window.event是可用的,它是做为你

+0

谢谢你解决我的问题。赞赏〜 – zhang