Я не уверен, что делал плагин waypoints, но я реорганизовал ваш код, и он работает для меня.Обратите внимание, что я снял вызов .waypoints и изменил ваш обработчик $ ('body'). Click (), чтобы он стал более специфичным для элементов навигационной ссылки.Этот обработчик будет прокручивать до каждого элемента, а затем будет выполнять удаление и добавление класса правильно после завершения прокрутки:
$(document).ready(function()
{
function highlightNav(navElement){
$("#navigation a").removeClass('active');
navElement.addClass('active');
}
$('#navigation a').click(function(event){
var nav = $(this);
var id = nav.attr('href');
$.scrollTo(id, 1000, {
offset: { top: -75 },
axis: 'y',
onAfter: function(){
highlightNav(nav);
}
});
return false;
});
$(window).scroll(function(){
if($(this).scrollTop() == 0){
highlightNav($("#navigation a[href*='home']"));
}
});
$.fn.waypoint.defaults.offset = 75;
$('.section h1.page_name').waypoint(function() {
var id = this.id;
var op = $('#navigation a[href = "#' + id + '"]');
if (op.length) {
highlightNav(op);
}
});
// Fancybox
$("a.zoom").fancybox({
'overlayShow' : false,
'transitionIn' : 'elastic',
'transitionOut' : 'elastic'
});
$("a.outside_shade").fancybox({
'titlePosition' : 'outside',
'overlayColor' : '#000',
'overlayOpacity' : 0.9
});
$("a.inside_white").fancybox({
'titlePosition' : 'inside'
});
$("a.inside_shade").fancybox({
'titlePosition' : 'over'
});
// validation
$("form").validate();
// nivo slider
$('#slider').nivoSlider();
});
В html я добавил активный класс по умолчанию к первой ссылке:
<div id="navigation">
<ul>
<li><a href="#home" class="active">Home</a></li>
<li><a href="#portfolio">Portfolio</a></li>
<li><a href="#who">Who Are We?</a></li>
<li><a href="#service">Our Services</a></li>
<li><a href="#features">Features</a></li>
<li><a href="#contact">Keep in Touch</a></li>
</ul>
</div>
Также я заметил, что на странице вы определили свой css до , когда вызывается reset.css. Обычно это плохая практика, вы можете захотеть убедиться, что reset.css всегдаизвлечен первый файл css. Похоже, что он не сильно повлиял на страницу, но иногда вы получите странные результаты, делая это.
Я сделал jsfiddle результатов здесь: http://jsfiddle.net/RNsFw/2/
плагин waypoints больше не нужен, я думаю.Я не менял fancybox или средства проверки, потому что я не уверен, что они делают, и это не было частью вашей проблемы.
Я протестировал его в Firefox и Chrome.Дайте мне знать, если у вас есть вопросы:)