Владимир Кай: Не помогло что, поставить точку с запятой? Ну значит проблема не в этом. Тогда проверяйте структуру исходного массива. Тут никаких фокусов нет - есть массив, делаете эхо, все. Если на каком-то этапе ошибка, это все довольно легко фиксится: делаете логи, смотрите.
Пока что в вашем вопросе понятно чуть меньше чем ничего - вы несколько раз утверждаете что у вас не работает метод parse объекта JSON, и только один раз приводите пример вывода, кстати вполне удовлетворительного. Скажите в чем именно проблема и почему вы считаете, что это все у вас работает неправильно. Лучше в формате "дано" + "ожидание" + "результат"
Это я на всякий случай вам заметил: по де факто стандарту (ибо официального никакого естественно нет) для виджета типа accordion скрытие всех элементов списка кроме активного входит в default functionality.
Рома: если бы вы ставили transition только на нужные элементы, у вас бы ничего не скакало. Я просто удалил правило раздающее всем элементам transition и все дёрганья исчезли
Игорь Воронов: ну парень же наверное хотел шаблон для своей задачи - ajax + history API. Типа добавил на страницу скрипт, указал target и все, все работает из коробки. Handlebars это просто template engine
Кстати, вы внутри цикла объявляете position с помощью var. В JS область видимости создает не блок ({ }), а функция. Таким образом вы объявляете переменную position в той же области видимости, что и blocks. Ну, на всякий случай.
Метод offset существует у объектов jQuery. Выбирая из blocks (который объект jQuery) нужный элемент с помощью индекса, вы получаете просто элемент DOM, в котором такого метода нет.