Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.04.2011, 08:10
Аспирант
Отправить личное сообщение для _axl Посмотреть профиль Найти все сообщения от _axl
 
Регистрация: 21.07.2009
Сообщений: 39

Скрыть слой если щелкнули не по нему
Хочу сделать скрипт, который будет скрывать слой (включающий n вложенных элементов), если мышкой щелкнули не по нему. Пока не придумал ничего лучше чем проверять всех родителей элемента по которому щелкнули, если среди них нет искомого, то его закрываем:
$(document).bind("click", function(e){
            var close = true;
            var id    = picker.attr('id');

            if( $(e.target).attr('id') == id){
                close = false;
            }else{
                $(e.target).parents().each(function(){
                    if( $(this).attr('id') == id){
                        close = false;
                    }
                });
            }

            if(close){
                picker.hide();
            }
        });

Может можно как-то более оптимизированно?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Модуль для работы с модулями JSprog Ваши сайты и скрипты 29 02.09.2009 13:31