Как это сделать.Как получить родителя цели
Если родитель цели является .form_contact_div, тогда console.log ('keep open form');
код, который я использую, но он не работает (else if) условие работает только для if и else.
код:
jQuery("body").click(function(e) {
var target = jQuery(e.target);
console.log(target);
if(jQuery(target).parents('#contact-btn-div').length
&& jQuery('#contact-btn-div').hasClass('close')) {
console.log('keep open btn');
jQuery("#form_contact_wrapper").animate({'left': '0px'});
jQuery("#contact-btn-div").removeClass('close');
}
else if(jQuery(target).parent().is('.form_contact_div')) {
console.log('keep open form');
jQuery("#form_contact_wrapper").animate({'left': '0px'});
}
else{
console.log('keep close');
jQuery("#form_contact_wrapper").animate({'left': '-472px'});
jQuery("#contact-btn-div").addClass('close');
}
});
Вы используете IE? – Amit
Если вы завершаете свой код в функции готовности документа и передаете '$' как параметр, вы можете сохранить кучу байтов, плюс он будет выглядеть более чистым. – elclanrs
_note_: переменная 'target' уже возвращается' jQuery', поэтому нет необходимости передавать ее в jQuery еще раз: 'jQuery (target)'. –