2015-05-06 4 views
-1

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

Это мой сценарий (внутри головы тега):

<script type="text/javascript"> 
    jQuery(document).ready(function($) { 
     $(".scroll").click(function(event){  
      event.preventDefault(); 
     $('html,body').animate({scrollTop:$(this.hash).offset().top},1200); 
     }); 
    }); 
</script> 

И это мои ссылки (внутри тега тела):

<%= link_to 'Plataformas', root_path + '#plataformas', class: "scroll" %> 
<%= link_to 'Contato', root_path + '#contato', class: "scroll" %> 

Это куски кода внутри моего приложения. html.erb.

Спасибо заранее!

+0

Что не работает? – Avery

+0

Это действительно идет к целевому контенту, но анимация не будет работать, я имею в виду, это не плавный переход – Rob

ответ

0

Моя проблема не была в коде выше, но на самом деле у моего приложения.js отсутствовала строка require_tree, поэтому она не загружала другие js-файлы. Хотя ответ ниже, это не решение моей проблемы (и именно поэтому я этого не выбрал) @yodfz_cn был очень полезен, спасибо!

1

проверить $ (this.hash) .offset(). Верхнее значение; console.log ($ (this.hash) .offset(). Top); смотрите это!

+0

вот что я получил: Uncaught TypeError: Невозможно прочитать свойство «верх» неопределенного (индекс): 80 (анонимная функция) Что именно не определено, есть идеи? – Rob

+1

this.hash не определено, отредактируйте это, так, где this.hash? или что такое хэш? –

Смежные вопросы