2013-09-26 4 views
0


У меня есть 2 вопроса, чтобы решить, проверить следующий пример: http://jsfiddle.net/mmacin/pacJr/5/
1. Мне нужно добавить класс Div, если в другой DIV некоторый класс нет ... Мой код не работает:Если элемент не имеет класс ... addClass() к другому элементу

$(document).ready(function(){ 
if (!$('#menu').hasClass('in')) { 
    $('#article').addClass('fWidth'); 
    } 
} 

2. Во время «uncollapsing» появляется странный эффект - двойной открытый.
Любая идея, как это решить? Спасибо

+0

К сожалению, предыдущий комментарий был неправ. Но вы все еще не хватает ');' в конце. – Harry

+1

У div есть класс «в», чтобы начать, поэтому он не собирается входить в это, если .... В вашем коде также есть синтаксические ошибки. – epascarello

+1

В вашей скрипте #menu имеет класс .in, поэтому класс fWidth никогда не добавляется, как и ожидалось. – adeneo

ответ

0

Синтаксическая ошибка в конце. Вы указываете! перед выражением if. Я думаю, вы хотите сделать что-то подобное, нет?

if ($('#menu').hasClass('in') === true) { 
$('#article').addClass('fWidth'); 
} 
+0

Это будет 'ложь', а не' истина' .... что именно такое 'if (! ...' does – epascarello

0

Вы пропустили последнюю закрывающую скобку готовой функции )

Должно быть,

$(document).ready(function(){ 
    if (!$('#menu').hasClass('in')) { 
     $('#article').addClass('fWidth'); 
    } 
    }); 
Смежные вопросы