2013-09-14 5 views
0

У меня возникла проблема относительно положения нижнего колонтитула на событии клика. Я работаю с bootstrap css, и у меня есть складной элемент (аккордеон в бутстрапе), который при сведении его имеет класс с именем .accordion-toggle.collapsed, а когда не его класс - .accordion-toggle.Нижний колонтитул вверх/вниз по щелчку

Ну, я пытаюсь slidedown колонтитула, когда этот элемент свернут (потому что это перезапись колонтитул) и мой код:

<script> 
$(function() { 

    var collapsed = $('.accordion-toggle.collapsed'); 

    $('#links').click(function(){ 
     if (collapsed){ 
      $(".footer").css({'margin-top':'320px'}); 
     }else{ 
      $(".footer").css({'margin-top':'150px'}); 
     } 
    }); 

}); 
</script> 

Ну проблема в том, что, когда я нажимаю на складном элементе нижний колонтитул скользит, но когда я нажимаю снова и не сжимается (его изменение класса (переключение между аккордеонами), нижний колонтитул не возвращается в исходное положение, то есть: верхняя граница 150 пикселей.

Спасибо за помощь! !

ответ

1

Обновлено: Изменения JavaScript для этого:

var collapsed; 
$('#links').click(function() { 
    collapsed = $('#links').hasClass('collapsed'); 
    if (collapsed) { 
     $(".footer").css({'margin':'320px 0px 0px 0px'}); 
    } else { 
     $(".footer").css({'margin':'150px 0px 0px 0px'}); 
    } 
}); 

Вам необходимо присвоить новое значение collapsed каждый раз #links щелчок. Кроме того, у jQuery .css(), по-видимому, есть проблемы с margin-top, поэтому просто используйте margin для назначения значений.

+2

'.hasClass ('collapsed');' или '.is ('. Collapsed');' –

+0

спасибо за быстрый ответ, я заменил код, но он не работает ... теперь он не скользит на всех: - (... не знаю, почему нижний колонтитул скользнул (с исходным кодом), но не слайд-шоу .... – dromeo

+0

@dromeo Сделайте пример http://jsFiddle.net/ вашего кода, чтобы мы может видеть, что происходит. – Sadiq

Смежные вопросы