2013-05-21 2 views
-1

Следующий jQuery ничего не делает. Я пропустил запятую или что-то в этом роде?Что не так в следующем jQuery

<script> 
$(".link<? echo $counter; ?>").click(function() { 
    $('.sub').toggle(function() { 
     $(".sub<? echo $counter; ?>").animate({ 
      height: ($(this).parent().height() * <? echo(count($$vari)); ?>) + 20 
     }, 1000); 
    }, function() { 
     $(".sub<? echo $counter; ?>").animate({ 
      height: 0 
     }, 1000); 
    }); 
});  
</script> 

Консоль не TRow какие-либо ошибки, и когда я изменить код

<script> 
$(".link<? echo $counter; ?>").click(function() { 
$(".sub<? echo $counter; ?>").animate({ 
height: ($(this).parent().height() * <? echo (count($$vari)); ?>) + 20 
}, 1000); 
}); 
</script> 

Скрипт работает (для переключения ofcource кроме)

+0

Что такое ошибка консоли и что такое значение для $$ vari? –

ответ

0

toggle() функция используется таким образом было удален в jQuery 1.9, а теперь только показывает и скрывает элементы. Какие выходы PHP невозможно нам знать, но вы, как правило, не должны использовать shorttags?

Также обратите внимание, что вы привязываете клик внутри клика, и каждый раз, когда нажимаются элементы .link*, новый обработчик событий привязан к элементам .sub.

0

Прежде чем перейти по ссылке, используйте инструменты разработчика в своем браузере и убедитесь, что слушатель фактически добавлен в элемент управления. Кроме того, что вы подразумеваете под «ничего не делает»? Каковы ваши ожидания?