Лучший способ «найти родителя» и заявления
Я могу'не могу понять, почему это не такт работает:
$(document).ready(function() {
if ($('.checkarea.unchecked').length) {
$(this).parent().parent().parent().parent().parent().parent().parent().removeClass('checked').addClass('unchecked');
}
else {
$(this).parent().parent().parent().parent().parent().parent().parent().removeClass('unchecked').addClass('checked');
}
});
Вот'Скриншот структуры HTML:http://cloud.lukeabell.com/JV9N (Обновлено с правильным скриншотом)
Кроме того, должен быть лучший способ найти родительский элемент (таких элементов на странице несколько, поэтому мне нужно, чтобы они влияли только на тот, который не отмечен).
Вот'Вот какой-то другой код, который может быть важен:
$('.toggle-open-area').click(function() {
if($(this).parent().parent().parent().parent().parent().parent().parent().hasClass('open')) {
$(this).parent().parent().parent().parent().parent().parent().parent().removeClass('open').addClass('closed');
}
else {
$(this).parent().parent().parent().parent().parent().parent().parent().removeClass('closed').addClass('open');
}
});
$('.checkarea').click(function() {
if($(this).hasClass('unchecked')) {
$(this).removeClass('unchecked').addClass('checked');
$(this).parent().parent().parent().parent().parent().parent().parent().removeClass('open').addClass('closed');
}
else {
$(this).removeClass('checked').addClass('unchecked');
$(this).parent().parent().parent().parent().parent().parent().parent().removeClass('closed').addClass('open');
}
});
(Также открыт для улучшений в этом разделе)
Спасибо вам большое!
Вот'Ссылка на то, где все это происходит:http://linkedin.guidemytech.com/sign-up-for-linkedin-step-2-set-up-linkedin-student/
Обновление: ЯМы улучшили код из комментариев, но все еще были проблемы с первым разделом, который не работал.
$(document).ready(function() {
if ($('.checkarea.unchecked').length) {
$(this).parents('.whole-step').removeClass('checked').addClass('unchecked');
}
else {
$(this).parents('.whole-step').removeClass('unchecked').addClass('checked');
}
});
-
$('.toggle-open-area').click(function() {
if($(this).parents('.whole-step').hasClass('open')) {
$(this).parents('.whole-step').removeClass('open').addClass('closed');
}
else {
$(this).parents('.whole-step').removeClass('closed').addClass('open');
}
});
$('.toggle-open-area').click(function() {
$(this).toggleClass('unchecked checked');
$(this).closest(selector).toggleClass('open closed');
});
$('.checkarea').click(function() {
if($(this).hasClass('unchecked')) {
$(this).removeClass('unchecked').addClass('checked');
$(this).parents('.whole-step').removeClass('open').addClass('closed');
}
else {
$(this).removeClass('checked').addClass('unchecked');
$(this).parents('.whole-step').removeClass('closed').addClass('open');
}
});