Прятать блок при клике другом месте

226
16 сентября 2017, 22:35

Здравствуйте. Есть 2 блока: #contacts-view и .yes-open-phone. если кликнуть на блок #contacts-view - появляется блок .yes-open-phone, если еще раз кликнуть на #contacts-view - блок .yes-open-phone пропадает.

Вопрос: Как сделать чтобы блок .yes-open-phone так же пропадал при клике в любом другом месте страницы?

мой код:

$("#contacts-view").click(function() {
    if ($(".yes-open-phone").css('display') == 'none') {
        $(".yes-open-phone").animate({height: 'show'}, 300);
        $(".contacts-tab").css({"border":"1px solid #bd2c3c"});
        $(".open-phone").css({"background":"url('/style/img/close-phone-color.png') no-repeat"});
    }else{
        $(".yes-open-phone").animate({height: 'hide'}, 300);
        $(".contacts-tab").css({"border":"1px solid #fff"});
        $(".open-phone").css({"background":"url('/style/img/open-phone.png') no-repeat"});
    }
});
Answer 1

$(function(){ 
 
$('#contacts-view').click(function(e){ 
    $('.yes-open-phone').toggle(); 
    return false; 
}); 
 
$('body').click(function(e){ 
    if(!$('.yes-open-phone').is(e.target)){ 
        $('.yes-open-phone').hide(); 
    } 
    return true; 
}); 
});
body{ 
   width:100%;height:1000px; 
} 
.yes-open-phone{ 
   display: inline-block; 
   padding:10px; 
   border:1px solid red; 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<body> 
<button type=button id="contacts-view">Открывалка</button> 
<div class="yes-open-phone"> 
    Кликни мимо 
</div> 
 
</body>

READ ALSO
Отмена стиля css

Отмена стиля css

При наведении мыши :hover нужно отменить стиль Есть у нас родительский блок, в нём множество дочерних с разными стилямиПри наведении мыши на родительский,...

195
Как использовать Html.IImageGetter в Xamarin Forms Renderer

Как использовать Html.IImageGetter в Xamarin Forms Renderer

Всем добрый день, я не совсем понимаю как использовать HtmlIImageGetter

471
Самое первое событие

Самое первое событие

Нужно что-бы при старте программы проверялось PropertiesSettings

210