所以我想要完成的是你通过点击它之外的任何地方来关闭弹出窗口。但就像现在一样,如果你点击一个< p为H.弹出窗口内的标签,它也会关闭......
我现在得到的是:
$('html').click(function(e) {
var popup = $('.popup');
if(popup.length) {
if(!$(e.target).is('.popup-content') || !$(e.target).is('.popup-content').find('*')) {
popup.removeClass('in');
setTimeout(function () {
popup.remove();
}, 300);
}
}
});
显然!$(e.target).is('。popup-content')。find('*')似乎不起作用。 内容不会是静态的......
希望有人有解决方案
答案 0 :(得分:0)
试试这个:
$('html').click(function(e) {
var popup = $('.popup');
var clickedElement = e.target;
var popupContent = ($(clickedElement).closest('.popup-content').length > 0)? true:false;
if(popup.length > 0) {
if(!popupContent) {
popup.removeClass('in');
setTimeout(function () {
popup.remove();
}, 300);
}
}
});