В настоящее время я пытаюсь создать сайт на одной странице. На данный момент у меня есть меню навигации, чтобы перейти к выбранной части веб-сайта при нажатии, а активная вкладка изменится и при щелчке. Но я пытаюсь выяснить, как сделать css изменяться на активную вкладку, когда следующая страница была прокручена до (и не нажата в меню).Изменение активной вкладки в зависимости от положения прокрутки
$(document).ready(function(){
$("nav ul li").click(function(){
var sectionClass = $(this).attr('class');
if ($(this).hasClass('active')){
}
else {
$("nav ul li.active").removeClass('active');
$(this).addClass('active');
sectionId = $(this).attr('id');
var parts = sectionId.split("_");
$('html, body').animate({
scrollTop: $("#" + parts[1]).offset().top
}, 'slow');
}
});
});
<body>
<nav class="nav-bar">
<ul>
<li class="active" id="menu_index">Welcome</li>
<li id="menu_page1">Menu1</li>
<li id="menu_page2">Menu2</li>
<li id="menu_page3">Menu3</li>
<li id="menu_page4">Menu4</li>
</ul>
</nav>
<div id="index"></div>
<div id="page1"></div>
<div id="page2"></div>
<div id="page3"></div>
<div id="page4"></div>
</body>
https://jsfiddle.net/nsefqo3w/
Добавлено jsfiddle, чтобы показать, как это только сейчас, я новичок, так что вы, вероятно, заметили несколько проблем!
Просто взгляните на эту скрипку;) http://jsfiddle.net/cse_tushar/Dxtyu/141/ –
Ole прав. Вы также должны использовать ширину li, потому что она выглядит awfull с ** vh ** –