如何在带有锚点和菜单活动样式的页面上禁用和恢复jQuery航路点
我有一个使用jQuery waypoints插件以及scrollTo插件的页面,以实现粘性标题等(教程如下:http://webdesign.tutsplus.com/tutorials/javascript-tutorials/create-a-sticky-navigation-header-using-jquery-waypoints/) 我的大部分工作都很好,但我遇到了您在子菜单上可以看到的行为-当单击与页面下方div相对应的链接时,页面会根据div进行适当的滚动,并且菜单会以“selected”类样式更新。但是,由于页面正在滚动通过其他div,因此当页面滚动通过时,菜单会在每个活动菜单项中设置动画。我希望能够删除该函数,然后在页面导航到相应的div时立即恢复该函数,以便删除活动菜单链接的动画动画。你可以看到我在这里谈论的内容(在子菜单中,如果你点击任何链接,如穿梭机司机或接待员等) 我知道waypoints插件中有一个remove()方法,但我不知道如何恢复它。此外,也许还有另一种方法可以达到同样的目的 我的函数如下所示:如何在带有锚点和菜单活动样式的页面上禁用和恢复jQuery航路点,jquery,jquery-waypoints,Jquery,Jquery Waypoints,我有一个使用jQuery waypoints插件以及scrollTo插件的页面,以实现粘性标题等(教程如下:http://webdesign.tutsplus.com/tutorials/javascript-tutorials/create-a-sticky-navigation-header-using-jquery-waypoints/) 我的大部分工作都很好,但我遇到了您在子菜单上可以看到的行为-当单击与页面下方div相对应的链接时,页面会根据div进行适当的滚动,并且菜单会以“sele
$(function() {
// Do our DOM lookups beforehand
var nav_container = $(".navContainer");
var nav = $(".navStickyHolder");
nav_container.waypoint({
handler: function(event, direction) {
nav.toggleClass('sticky', direction=='down');
if (direction == 'down'){
nav_container.css({ 'height':nav.outerHeight() });
} else {
nav_container.css({ 'height':'auto' });
}
},
offset: 177
});
var sections = $(".servicePanel");
var navigation_links = $(".servicesNavigation li a");
sections.waypoint({
handler: function(event, direction) {
var active_section;
active_section = $(this);
if (direction === "up") active_section = active_section.prev();
var active_link = $('.servicesNavigation li a[href="#' + active_section.attr("id") + '"]');
navigation_links.removeClass("selected");
active_link.addClass("selected");
}, offset: 295
})
navigation_links.click( function(event) {
$.scrollTo(
$(this).attr("href"),
{
duration: 300,
offset: { 'left':0, 'top': -240 }
}
);
navigation_links.removeClass("selected");
$(this).addClass("selected");
});
});
您好,您使用的是来自的最新版本的航路点吗? 您需要将航路点选项“continuous”定义为“false” 例如:
我有同样的问题,这个解决方案没有解决它。你找到答案了吗?
$('.div')
.waypoint(function(direction){
if (direction === 'down') {
do stuff
} //endif
},{
offset: '10px',
continuous: false
})
.waypoint(function(direction){
if (direction === 'up') {
do stuff
} //endif
},{
offset: '10px',
continuous: false
});
});