Как закрывать работу скрипта по нажатию в любом месте?

Как в этом скрипте сделать так, что бы можно было скрывать элемент не кнопкой, а по нажатию в любом месте на странице, и при этом можно открыть только один элемент, если нажать на другой, то первый автоматически скрывается?
  • Вопрос задан
  • 194 просмотра
Решения вопроса 1
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
Пригласить эксперта
Ответы на вопрос 1
@aleks2shaman
Тема вроде закрыта, но попробую все же внести свою лепту.

<div class="snippet">
    <p class="show red">your php variable</p>
    <i>
        <input type="text" value="your php variable">
        <button class="hide">OK</button>
    </i>
</div>
<div class="snippet">
<p class="show green">your php variable</p><i><input type="text" value="your php variable"><button class="hide">OK</button></i>
</div>
<div class="snippet">
<p class="show blue">your php variable</p><i><input type="text" value="your php variable"><button class="hide">OK</button></i>
</div>


$(document).ready(function() {
    $("i").hide();
    var allsnippet = $(".snippet");
    $(".snippet").on("click",function(e){
        var snippet = this;
        e.stopPropagation();
        $(".snippet").each(function(){
            if(this == snippet){
                $(this).children("p").hide();
                $(this).children("i").show();
            }
            else{
                $(this).children("p").show();
                $(this).children("i").hide();
            }
        });
    });
    $(document).on("click",function(){
        allsnippet.each(function(){
            $(this).children("p").show();
            $(this).children("i").hide();
        });
    });
});
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы