Хочу сделать скрипт, который будет скрывать слой (включающий 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();
            }
        });
Может можно как-то более оптимизированно?