email-signup-link
をクリックするとemail-signup
を開きます。それからボックス自体を除いて、ページ上のどこかをクリックして閉じることができます。jQueryどこでもクリックしてDIVを閉じるページ
私はこのサイトを見回しましたが、この問題の解決策はたくさんありますが、私が試したすべてのものを表示してからすぐに私のdivを隠します。私は間違ったことをする必要があります。私のJavascriptの
<a href="#" id="email-signup-link">Sign Up</a>
<div id="email-signup">
<div id="inner">
<h2>E-mail Notifications</h2>
<input class="" type="text" name="description" placeholder="Enter your e-mail address" id="description" />
<a href="#">Sign Up</a>
</div>
</div>
これは、次のとおりです:
この
はHTMLです$('#email-signup').click(function(){
e.stopPropagation();
});
$("#email-signup-link").click(function() {
e.preventDefault();
$('#email-signup').show();
});
$(document).click(function() {
$('#email-signup').hide();
});
'' 'e.stopPropagation();' ''は、時には不要なイベントを引き起こすことがあります。もし ''#email-signup'''をクリックして '' 'e.stopPropagation();' 'をクリックするとあなたのフォームは送信されません。 –
@codenamejames '#email-signup'をクリックしても' stopPropagation'はありませんので、問題ありません。 'stopPropagation'は、イベントがDOMのバブリングを停止するだけです。送信ボタンが何らかの形で '#email-signup'の親でない限り、あなたの例は決して問題にならないでしょう。 –
モンタージュあなたは正しいですか?フィードバックに感謝します:-) –