单击文档,.area
div消失。
$(document).on('click', function() {
$('.area').hide();
});
$(document).off('click', '.red', function(e) {
e.stopPropagation();
});
在这种情况下,如何将stopPropagation应用于.red
。我想保留这种js格式,因为我需要添加更多的类名。
在线示例 http://jsfiddle.net/ku9cj/1/
由于
答案 0 :(得分:5)
off()
用于删除事件处理程序;你需要使用.on()
$(document).on('click', '.red', function(e) {
e.stopPropagation();
});
演示:Fiddle
答案 1 :(得分:1)
您不应该在文档中附加处理程序,因为它们非常缓慢地冒泡。如果必须这样做,请尝试以下操作:
$('body').on('click', function() {
$('.area').hide();
});
$('.red').on('click', function(e) {
e.stopPropagation();
});
或者,如果您坚持使用委托并且没有更近的父元素:
$('body').on('click', '.red', function(e) {
e.stopPropagation();
});