Javascript-форум (https://javascript.ru/forum/)
-   Библиотеки/Тулкиты/Фреймворки (https://javascript.ru/forum/library-toolkit-framework/)
-   -   bootstrap .scrollspy (https://javascript.ru/forum/library-toolkit-framework/43747-bootstrap-scrollspy.html)

dikucher 18.12.2013 21:01

bootstrap .scrollspy
 
доброго времени суток
пациент левое плавающие меню. На него повешен метод .scrollspy ( библиотека bootstrap ). Суть метода в том, что он может отслеживать скролл окна, и в зависимости того, на каком якоре мы находимся ( на странице их 5, каждый для каждого пункта меню ) он добавляет к управляющей ссылке меню класс .active
Все отлично работало, но стала задача, спрятать блоки, и открываются они по кнопке "Все верно продолжить", которая находится в центральной колонке ( в первом блоке, она покажется когда потыыкать по пунктам ), после того как мы откроем блоки, scrollspy уже работает некорректно, срабатывает ( т.е. добавляет тот самый класс .active )
Вот документация документация . Пробовал также вызвать метод, как указанно в документации, для случая когда происходит add or remove DOM элементов
<body class="main-body" data-spy="scroll" data-target=".nav">
<div id="global-wrap">

    <div class="wrap-center">
    <nav class="main-nav nav">
        <ul>
            <li class="blue"><a href="#link1">Тип и структура</a></li>
            <li class="orange"><a href="#link2">Содержание</a></li>
            <li class="pink"><a href="#link3">Внешний вид</a></li>
            <li class="green"><a href="#link4">Дополнительно</a></li>
            <li class="blue"><a href="#link5">Время выполнения</a></li>
        </ul>
    </nav>


$('[data-spy="scroll"]').each(function () {
        var $spy = $(this).scrollspy('refresh')
    });


Как вы уже поняли - это не работает. Я явно, что то делаю не так.


Часовой пояс GMT +3, время: 20:34.