Не удается получить jQuery плавную прокрутку для работы


Я выдергивал волосы, пытаясь получить функциональную плавную прокрутку до идентификаторов на той же странице. Я попробовал почти все решения, которые я нашел в google. Я добираюсь до точки, когда кажется, что все должно работать, но тогда даже Основные не-JS id связывания ломаются. В настоящее время я использую плагин плавной прокрутки, загруженный с веб-сайта jquery. Кодекс в его нынешнем виде таков. Я не знаю тонну о JS или Jquery, поэтому я предполагаю, что просто что-то упускаю. Я проверка кода на функциональных версиях плавной прокрутки, но даже когда Я делаю разрывы ссылок на странице полностью:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Simon Moon Landings</title>
<link href="style.css" rel="stylesheet" type="text/css">
<link href='http://fonts.googleapis.com/css?family=Noticia+Text:400,700,400italic,700italic' rel='stylesheet' type='text/css'>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.smooth-scroll.js"></script>
<script>
    $(document).ready(function() {
      $('ul.mainnav a').smoothScroll();
    });

  </script>
</head>

<body>
<div class="container">

<div class="menu">
<nav>
<ul class="mainnav">
<li><a href="#one">one</a></li>
<li><a href="#two">two</a></li>
<li><a href="#three">three</a></li>
<li><a href="#four">four</a></li>
<li><a href="#five">five</a></li>
<li><a href="#six">six</a></li>
</ul>
</nav>
<img class="logo" src="images/smlogo.gif" width="450" height="288" alt="Simon Moon Landings Logo" onmouseover="on();" onmouseout="off();"></nav>
</div>

<div class="content">

<div class="section" id="one">
<h4>One</h4>

</div>
<div class="section" id="two">
<h4>Two</h4>

</div>
<div class="section" id="three">
<h4>Three</h4>

</div>
<div class="section" id="four">
<h4>Four</h4>

</div>
<div class="section">
<a id="five"><h4>Five</h4></a>

</div>
<div class="section">
<a id="six"><h4>six</h4></a>

</div>
</div>

</div>


</body>
</html>
4 2

4 ответа:

Я нашел проблему. Это было не в скрипте вообще,а в CSS. У меня есть макет из двух столбцов, меню и якоря находятся в одном столбце (.меню) и целевые дивы находятся в другой колонке (.содержимого) я применил poisiton:Исправлена ошибка в меню и он начал работать.

Здесь все работает нормально.

Убедитесь, что URL-адрес jquery-smooth-scroll указан правильно.

Я использовал эту копию jquery-smooth-scroll для тестирования вашего кода: https://github.com/kswedberg/jquery-smooth-scroll

Это работает на меня. Смотрите этот пример: http://jsbin.com/ixefet/1/edit

Все, что я сделал, это изменил src для плавной прокрутки JavaScript на онлайн-версию (https://raw.github.com/kswedberg/jquery-smooth-scroll/master/jquery.smooth-scroll.min.js ) и добавьте текст, чтобы вы могли видеть, как происходит прокрутка.

Похоже, что вы используете неправильный src для вашего сценария плавной прокрутки (если это так, в вашем журнале ошибок JavaScript должно быть написано undefined function: $.smoothScroll или что-то еще вроде этого).

Это сработало для меня во время тестирования на jsfiddle,

here you go

Http://jsfiddle.net/mastermindw/XvV9W/1/