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