Плавная прокрутка не работает

Donec sed odio dui. Nullam id dolor id nibh ultricies Vehicula ut id elit. Morbi leo risus, porta ac conctetur ac, vestibulum at eros. Cras justo odio, dapibus ac facilisis in, egestas eget quam.


person brooklynjb    schedule 16.11.2013    source источник
comment
Пожалуйста, проверьте свой a.scroll, и вы увидите, что у вас нет правильного href ... так что это нормально, что он никуда не денется.   -  person drip    schedule 16.11.2013
comment
@drip не уверен, что вы имеете в виду, поскольку якоря работают нормально, когда код плавной прокрутки извлекается из js.   -  person brooklynjb    schedule 17.11.2013
comment
@ Чувак, весь код в ссылке…   -  person brooklynjb    schedule 17.11.2013
comment
Посмотрите рабочий пример, там ссылка href указывает на href = # posters, где #posters - это div # posters, в вашем случае a.scroll href = # ни на что не указывает. (опсс, я смотрел на логотип, который у вас есть в навигаторе, хорошо)   -  person drip    schedule 17.11.2013
comment
@drip как в nav.desktop-nav, так и в #sections, каждая ссылка имеет допустимую привязку href, которая указывает на другие разделы, например section.two с идентификатором #mission…   -  person brooklynjb    schedule 17.11.2013
comment
Ага, извини, это была моя промах. Я добавил решение как ответ ниже.   -  person drip    schedule 17.11.2013
comment
@JosephBergdoll, пожалуйста, проверьте мой ответ и выберите его как лучший ответ, если он вам помог, спасибо :)   -  person thenewseattle    schedule 19.11.2013


Ответы (2)


OMG наконец-то поняла, в чем проблема ...

Свитка нет в теле или теге html, он был на обертке ...

Измените код так:

$("a.scroll").click(function(event){
    event.preventDefault();
    $('.wrapper').animate({
        scrollTop:$(this.hash).offset().top - $('#header').outerHeight()
    }, 550);
})
person drip    schedule 16.11.2013
comment
хорошо - я отредактировал его, но теперь он прокручивается в случайные места вместо якорей… - person brooklynjb; 17.11.2013

Капельный код, это очень хороший код! но если у вас есть «прокрутка в случайные места», например, у Джозефа Бергдолла, вы должны удалить '# header' и сделать его пустым. вот так:

$("a.scroll").click(function(event){
    event.preventDefault();
    $('.wrapper').animate({
        scrollTop:$(this.hash).offset().top - $('').outerHeight()
    }, 550);
})

Я просто добавил привязку <a id="Page1"></a> в то место, где я этого не сделаю, тогда код будет прокручиваться до позиции с $('body').animate, а не $('.wrapper'), потому что мой свиток находится в теле. Этот код протестирован 2-ИЮН-2016, он работает на 100% с Chrome и Fire fox [JQuery загружен].

person Eng.Tawfeeq Amro    schedule 02.01.2016