jQuery - fadeOut div 单击指定选择器以外的任何地方?
jQuery - fadeOut div on click anywhere but specified selector?
我有一个简单的要求,但我正在努力解决。
使用 jquery,我想点击一个 link 来显示一个 div 然后可以点击任何地方但现在显示的内容再次隐藏它。
我已经完成了第一部分,我可以通过单击 link fadeIn/Out div。但我不确定如何添加它而不是仅单击 link 淡出,而是您可以单击蓝色内容区域以外的任何地方淡出。
http://jsfiddle.net/4hchhhcd/2/
因此,您通过单击 link 淡入,但通过单击显示内容之外的任何内容淡出。
$("#clickme").click(function() {
$("#extra").fadeToggle();
});
我想过将目标 html 或文档关闭,但这不起作用,因为 #clickme 就在其中。
$("#clickme").click(function () {
$("#extra").fadeIn();
});
$(document).click(function (event) {
if (event.target.id !== 'clickme') {
$("#extra").fadeOut();
}
})
点击link后需要离开案例。
Fiddle 已编辑。
您可以使用以下逻辑来处理目标元素内的任何后代点击:
$("#clickme").click(function(e) {
e.stopPropagation();
$("#extra").fadeToggle();
});
$(document).click(function(e) {
if (!$(e.target).closest('#extra').length) {
$('#extra').fadeOut();
}
});
我有一个简单的要求,但我正在努力解决。
使用 jquery,我想点击一个 link 来显示一个 div 然后可以点击任何地方但现在显示的内容再次隐藏它。
我已经完成了第一部分,我可以通过单击 link fadeIn/Out div。但我不确定如何添加它而不是仅单击 link 淡出,而是您可以单击蓝色内容区域以外的任何地方淡出。
http://jsfiddle.net/4hchhhcd/2/
因此,您通过单击 link 淡入,但通过单击显示内容之外的任何内容淡出。
$("#clickme").click(function() {
$("#extra").fadeToggle();
});
我想过将目标 html 或文档关闭,但这不起作用,因为 #clickme 就在其中。
$("#clickme").click(function () {
$("#extra").fadeIn();
});
$(document).click(function (event) {
if (event.target.id !== 'clickme') {
$("#extra").fadeOut();
}
})
点击link后需要离开案例。 Fiddle 已编辑。
您可以使用以下逻辑来处理目标元素内的任何后代点击:
$("#clickme").click(function(e) {
e.stopPropagation();
$("#extra").fadeToggle();
});
$(document).click(function(e) {
if (!$(e.target).closest('#extra').length) {
$('#extra').fadeOut();
}
});