2015-04-09 2 views
2

эй, ребята, я абсолютный новичок в jquery, и вот один из моих первых скриптов, в основном предполагаем добавить анимацию в основном при прокрутке в конкретную секцию, скрипка - here.Прокрутка кода анимации не работает

код скроллинг, что я имею в JQuery является:

$('nav a[href^="#"]').on('click', function (e) { 
       e.preventDefault(); 

       $('nav a').each(function() { 
        $(this).removeClass('active'); 
       }) 
       $(this).addClass('active'); 

       var target = this.hash, 
        menu = target; 
       $target = $(target); 
       $('html, body').stop().animate({ 
        'scrollTop': $target.offset().top 
       }, 500, 'swing', function() { 
        window.location.hash = target; 
       }); 
      }); 

Теперь я знаю только основную отладку в JS и поэтому единственная вина я смог найти в сценарии, что target не определена. Я получил этот скрипт из онлайн-игры, и он отлично работал там, но я не знаю, почему здесь его не работает.

Я не понимаю авторов, которые хотят добавить неопределенную переменную.

Может кто-нибудь, пожалуйста, сообщите мне, что я делаю неправильно? исходный код учебника можно найти here.

TY. Alex-Z

+0

@ все, это также в моем 100-м вопросе о СО, поэтому, пожалуйста, поддержите меня, общие парни ... его достижение;) –

ответ

2

Вместо анимации html, body, вы, вероятно, хотите оживить .content:

$('.content').animate({ 
    'scrollTop': $target.offset().top 
    }, 500, 'swing', function() { 
    window.location.hash = target; 
}); 

Fiddle


В этом коде:

var target = this.hash, 

& hellip; this ссылается на элемент a, который был нажат, а hash ссылается на его URL-адрес.

Так что для этого элемента:

<a href="#ex-1">Example-1</a> 

& hellip; this.hash будет #ex-1.


Этот код:

$target = $(target); 

& hellip; в настоящее время эквивалентно:

$target = $('#ex-1'); 

& hellip; который относится к div с этим id.


.content затем прокручивается до верхнего положения div.

+0

@RickHitchcork! Спасибо, гениальный! .. последний вопрос, какова цель и откуда она взялась? :) .............. +1 в любом случае. –

+0

Уверенная вещь, см. Мое редактирование. –

+0

@awesome! принято . хорошего дня . –

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