在我的网站http://goo.gl/34oQ8上,我根据本教程http://trevordavis.net/blog/jquery-one-page-navigation-plugin/实现了带有突出显示导航的平滑滚动 在没有“联系我们”项目的情况下正常工作但不能使用它(只有“联系我们”菜单项才会突出显示)。你知道为什么吗?怀疑它与#inline ref-tks
相关联<ul id="nav">
<li class="current"><a href="#presentation">Home</a></li>
<li><a href="#equipe">Team</a></li>
<li><a href="#plan-activite">About us</a></li>
<li><a href="#medias">Press</a></li>
<li><a href="#inline" class="modalbox">Contact Us</a></li>
</ul>
答案 0 :(得分:0)
问题是单页导航插件没有处理隐藏元素。初始化时,它会使用以下行计算每个元素的垂直位置:
self.sections[linkHref] = Math.round(topPos) - self.config.scrollOffset;
但是,隐藏的#inline元素的垂直位置为0,会抛出当前的区段检测代码。
你可以通过这样做来解决这个问题,当页面加载时,隐藏内联元素的位置不是0.我建议不要使用联系表单的模态对话框 - 只需使用一个居中的常规表单一个div。
要在没有代码更改的情况下查看修复,请使用chrome开发人员工具或类似工具在jquery.nav.js的第126行添加断点。然后,运行'this.sections.inline = 5000;'在控制台中。删除断点,并正确更新导航。