Проблема при использовании $ ('. dynatree-container'), когда на странице имеется несколько деревьев, так как это будет попробуйте и выберите каждое дерево с этим классом. У меня много деревьев, поэтому мне нужно выбрать дерево с определенным идентификатором ... но я обнаружил, как и предыдущий человек, который пытается выбрать дерево по его id (e g '#tree') не работает. Итак, что будет ...? что-то вроде = $ ("# prevPageTree"). dynatree ("getTree"). offset также не работает ...
Через несколько минут: хорошо, выяснили, как это сделать. Развертывание в отладчике Chrome показывает, что класс .dynatree-container фактически привязан к элементу < ul>, вставленному dynatree под элементом #tree, используемым для инициализации экземпляра dynatree.Так что вам нужно сделать что-то вроде
$("#tree ul").animate({ // animate the scrolling to the node
scrollTop: $(activeLi).offset().top - $('#tree ul').offset().top + $('#tree ul').scrollTop()
}, 'slow');
И если, как я, вы не хотите, чтобы прокручивать узел справа в верхней части окна, а затем
scrollTop: $(activeLi).offset().top - $('#prevPageTree ul').offset().top + $('#prevPageTree ul').scrollTop() - 150
будет красиво положить ваш узел 150 пикселей вниз
Для всех, кто сталкивается с этим в будущем, у меня возникла проблема, когда 'node.li' не был определен в IE. В моем случае 'node.span' _was_ определен (но я не сразу понял это). Вероятно, это хорошая идея, чтобы проверить оба, если один из них не определен. –