Я только что проверил это в IE7 под Vista, может быть, проблема существует только в IE7 под XP? Потому что это хорошо работает для меня в IE7, Chrome и Firefox:
window.location.hash = hashName;
Если это действительно не работает, то мы могли бы использовать scrollIntoView, как предлагает Кеннебек.
function scrollToAnchor(anchorName){
//set the hash so people can bookmark
window.location.hash = anchorName;
//scroll the anchor into view
document.getElementsByName(anchorName)[0].scrollIntoView(true);
}
Используйте вот так:
<script type='text/javascript'>scrollIToAnchor('foo');</script>
<a name='foo'></a>
<p>I will be scrolled into view</p>