Ниже приведен фрагмент кода, предназначенный для отображения комментариев определенного потока, который выбран.Команда slideUp игнорируется, но работает в консоли?
$('.comments-count').click(function(){
if(!commentsDown){
$(this).parent().parent().siblings('.comments').stop().slideDown();
commentsDown = true;
currentlyDown = $(this).parent().parent().siblings('.comments');
}else{
$(currentlyDown).stop().slideUp();
var newDown = $(this).parent().parent().siblings('.comments');
if(newDown != currentlyDown){
$(this).parent().parent().siblings('.comments').stop().slideDown();
commentsDown = true;
currentlyDown = $(this).parent().parent().siblings('.comments');
}else{
commentsDown = false;
currentlyDown = null;
}
}
})
$(currentlyDown).stop().slideUp();
Линия работает, если вы разместите его в консоли, но по какой-то причине он игнорируется в этом сценарии. Я ввел команды console.log() и показал, что он определенно должен выполнить его.
commentsDown и nowDown являются глобальными переменными, изначально установленными как false, так и null соответственно.
's JSFiddle. В настоящее время потоки представляют собой статический HTML. Как вы можете видеть, если вы открываете поток, а затем открываете другой, он отлично работает, но он не работает, чтобы закрыть поток.
Может быть сценарием выполняется до того, как ваши комментарии будут загружены. – Gael
Я добавил JSFiddle, чтобы помочь объяснить это. – TheBritishBloke