Я пытаюсь скрыть div и его контейнер при нажатии на контейнер.Как скрыть div и его контейнер при щелчке по контейнеру
Вот то, что я уже пытаюсь:
HTML
<p>text to unhide</p>
<div id="container">
<div id="div"></div>
</div>
CSS
#container { z-index:2998; position:fixed; width:100%; height:100%; top:0; left:0; background: green; }
#div { z-index:2999; position:fixed; top:15%; left:10%; width:80%; height:70%; background: yellow; }
p { color:#000; text-align:center; font-size:25px; }
JS
$(document).ready(function()
{
$("#container").mouseup(function(e)
{
var subject = $("#div");
if(e.target.id != subject.attr('id') && !subject.has(e.target).length)
{
subject.fadeOut();
}
});
});
Вот демо: http://jsfiddle.net/7jzrd0zt/
Как бы то ни было, желтый #div
может быть скрыт, но не зеленый #container
.
Как это решить?
Ну в вас коде, вы гаснуть только желтый '# div', если вам нужно скрыть контейнер, вы должен делать '$ (this) .fadeOut();' вместо этого - и будет исчезать зеленый контейнер, а также - http://jsfiddle.net/7jzrd0zt/1/ – techfoobar