我试图在焦点(点击)在它之外时隐藏div,但是它中有一些元素而不是在所有这些上执行e.target.id是否有一种方法可以包含所有元素?我的意思是明确的吗?
编辑:我在hide
#contain_name
时尝试click
newsletter
jsfiddle:demo
<div id="newsletter">
<form action="#" class="form-post">
<div class="clearfix">
<input type="text" id="email" name="email" placeholder="email" />
<button id="fake">Send</button>
</div>
<div id="contain_name" class="clearfix">
<input type="text" id="person_name" placeholder="full name" />
<button id="real_button">Send</button>
</div>
</form>
</div>
$('#email').focus(function() {
$('#fake').fadeOut();
$('#contain_name').slideDown();
});
$(document).on('click', function(){
//do something here
});
答案 0 :(得分:2)
$(document).on('click', function(e){
if (e.target !== $("#excludedDiv")[0]) {
// do something there
}
});
答案 1 :(得分:0)
此?
$( document ).on( 'click', function ( e ) {
if ( !$( e.target ).closest( '#newsletter' )[0] ) {
$( '#contain_name' ).hide();
}
});