window.location.hash выходят в IE7

Когда window.scrollTo(x,y) не работает на консоли браузера, и дом отображается после прокрутки, вы можете использовать это.

Для прокрутки на Splash или на любом сервисе рендеринга JavaScript выполните ниже js:

document.body.style.height = "2000px";
window.scrollTo(0,2000);

В Splash вы можете сделать что-то похожее на это:

  assert(splash:wait(10))
  assert(splash:runjs("document.body.style.height = '2000px';"))
    assert(splash:runjs("window.scrollTo(0,2000);"))
  assert(splash:wait(2))
  assert(splash:runjs("window.scrollTo(0,0);"))
6
задан Kara 6 December 2013 в 02:38
поделиться

3 ответа

IE и большинство других браузеров будут прокручивать до привязки с помощью anchor.focus () или до любого элемента с идентификатором с помощью element.scrollIntoView (true)

6
ответ дан 9 December 2019 в 20:48
поделиться

Вы пробовали изменить только location.hash ?

window.location.hash = "#" + hashName;
2
ответ дан 9 December 2019 в 20:48
поделиться

Я только что тестировал это в 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>
4
ответ дан 9 December 2019 в 20:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: