У меня есть простая настройка, позволяющая загружать окно справки "help" и прокручиваться до определенной точки на странице. Более или менее код выглядит следующим образом:
var target = /* code */;
target.offsetParent().scrollTop(target.offset().top - fudgeValue);
Цель прокрутки и значение fudge определяется несколькими подсказками, выпавшими на странице, и у меня нет проблем с этой частью этого механизма в любом месте. В Firefox и IE8 приведенный выше код работает точно так же, как я хочу: прокрученный блок (в данном случае, тело страницы) корректно прокручивает содержимое в нужную точку в окне, когда он сказал это сделать.
Однако в Chrome и Safari вызов scrollTop(), по-видимому, ничего не делает. Все цифры в порядке, и цель относится к правильной вещи (и offsetParent() действительно является элементом тела), но ничего не происходит. Насколько я могу судить по всему миру, это должно работать. Есть что-то смешное в рендерере в Safari и Chrome?
Это jQuery 1.3.2, если это имеет значение.
Страница тестирования: http://gutfullofbeer.net/scrolltop.html