背景をフェードアウトするポップアップウィンドウをシミュレートしています。これを行うには、画面全体を埋める div を切り替えるだけです。外側の背景をクリックしてポップアップを閉じることができるようにしたいのですが、現在起こっている新しいコンテンツ領域をクリックしたときはできません。私のコード:
JS:
function popbox() {
$('#overbox').toggle();
}
HTML:
<div class="popbox" onclick="popbox()"> Click Here </div>
<div id="overbox" onclick="popbox()">
<div id="infobox1">
<p>This is a new box</p>
<br />
<p>hello </p>
<br/><br/>
<p style="color:blue;text-align:center;cursor:pointer;" onclick="popbox()">close</p>
</div><!-- end infobox1 -->
</div> <!-- end overbox -->
CSS:
#overbox {
position: fixed;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
background: rgba(64, 64, 64, 0.5);
z-index: 999999;
display: none;
}
#infobox1 {
margin: auto;
position: absolute;
left: 35%;
top: 20%;
height: 300px;
width: 400px;
background-color: white;
border: 1px solid red;
}
.popbox {
cursor: pointer;
color: black;
border: 1px solid gray;
padding: 5px; 10px;
background: ghostwhite;
display: inline-block;
}
JSFiddle リンク: http://jsfiddle.net/RrJsC/
繰り返しますが、色あせた背景または「閉じる」(jsfiddleでは機能していませんが、私のサイトにあります)をクリックした場合にのみ切り替えたいのですが、含まれている白いボックス内をクリックしたときは切り替えません。いくつかの調査の後、.stopPropagation() を探しているようですが、まったく動作させることができませんでした。