Не удается получить 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 ответа:
Я нашел проблему. Это было не в скрипте вообще,а в 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
или что-то еще вроде этого).