Я делаю якорные ссылки на другие страницы с плавной прокруткой, но у меня проблема. У меня есть 2 или более якорных ссылок в общем меню и областей на одной странице.
Существует без проблем при переходе с разных страниц для этих областей, но на той же странице, когда я нажимаю другие якорные ссылки для других областей на той же странице , нет эффекта прокрутки .. почему?
Как я могу систематически использовать href="#Welcome"
и href="your_page_url#Welcome"
вместе?
html меню всех страниц:
<ul>
<li><a>firstpage</a>
<ul>
<li><a href="firstpage.html#firstarea" class="ozel">firstarea</a></li>
<li><a href="firstpage.html#secondarea" class="ozel">secondarea</a></li>
</ul>
</li>
<li><a>secondpage</a>
<ul>
<li><a href="secondpage.html#thirdarea" class="ozel">thirdarea</a></li>
<li><a href="secondpage.html#fourtharea" class="ozel">fourtharea</a></li>
</ul>
</li>
<li><a href="normalpages.html">thirdpage</a></li>
</ul>
одинаковые области страницы (первая страница. html):
<div id="firstarea">blablabla.......</div>
<div id="secondarea">blablabla.......</div>
и сценарий:
$(document).ready(function () {
var speed = 1000;
var hash = window.location.hash;
if ($(hash).length) scrollToID(hash, speed);
$('.ozel').click(function (e) {
e.preventDefault();
var id = $(this).attr('href');
if ($(id).length) scrollToID(id, speed);
});
});
function scrollToID(id, speed) {
var offSet = 300;
var obj = $(id).offset();
var targetOffset = obj.top - offSet;
$('html,body').animate({ scrollTop: targetOffset }, speed);
}