Из поста Лим Чи Ун, сделанного здесь: http://davidwalsh.name/mootools-onload-smoothscroll

window.addEvent(‘domready’, function() {
new SmoothScroll({ duration:700 }, window);
var el = window.location.hash.substring(1); // the hash
if(el) {
window.scrollTo(0,0);
var scroll = new Fx.Scroll(window, { wait: false, duration: 700, transition: Fx.Transitions.Quad.easeInOut });
scroll.toElement(el);
}
});

Я хотел бы, чтобы страница автоматически плавно прокручивалась до символа # в URL-адресе при загрузке страницы.

Плавная прокрутка работает, когда ссылка такая, т.е. та же страница:

<a href="#pageHeading">Books & Booklets</a>

А не как мне это нужно вот так:

<a href="books.html#pageHeading">Books & Booklets</a>

Может ли кто-нибудь пролить свет на то, почему это не работает?

Благодарность

1
Anthony 2 Сен 2010 в 13:58

2 ответа

Лучший ответ

Лим Чи Аун был достаточно любезен, чтобы опубликовать решение!

Примере

Полный код

2
Anthony 9 Сен 2010 в 10:31

Вы поместили тот же самый javascript на страницу "books.html"?

Если нет, вам нужно разместить свой скрипт там и на каждой странице, на которой вы хотите, чтобы плавная прокрутка происходила при загрузке страницы.

0
Marco Demaio 2 Сен 2010 в 11:46