Показать сообщение отдельно
  #2 (permalink)  
Старый 01.12.2016, 09:24
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,156

Сообщение от VGreen
Как организовать так чтобы он закрывался не только по клику на ссылку но и по любой другой области КРОМЕ самого блока и его дочерних элементов?
Цитата:
обычно все это делают так
function openPopup(e)
{
//показываем попап
}
function closePopup (e)
{
// скрываем поп-ап
    $('body').off('click', closePopup);
}

$('button').on(
    'click',
    function (e)
    {
        e.preventDefault();
        openPopup(e);
        setTimeout(
            function ()
            {
                 $('body').on('click', closePopup)
            }
        );
        return false;
    }
);

setTimeout в данном случае приводит все реализации "всплытия" событий к единообразию. Он откладывает выполнение привязки закрытия события на время, когда событие закончится.
Взято тут...
Ответить с цитированием