我正在实施一个基于joomla!3的网站,主要内容是“onepage”,导航使用scrollTop
和固定菜单。该网站还提供了一些共享相同菜单的其他页面。
从其他页面返回主页后,scrollTop
offset
出现问题。根据散列的URL,页面加载正确的id,但我无法弄清楚如何添加偏移量。
我希望我已经很好地解释了我的问题。
基本上我的代码是:
...
<div class="navbar-collapse">
<ul>
<li class="item-101 current active"><a href="#" >Home</a></li>
<li class="item-105"><a href="#claim" >what we do</a></li>
<li class="item-106"><a href="#wwa" >who we are</a></li>
<li class="item-107"><a href="#port" >portfolio</a></li>
</ul>
</div>
<div class="main">
<div id="claim"></div>
<div id="wwa"></div>
<div id="port"></div>
</div>
...
<script>
jQuery(document).ready(function($) {
$(".navbar-collapse ul li a[href^='#']").on('click', function(e) {
target = this.hash;
e.preventDefault();
$('html, body').animate({
scrollTop: $(this.hash).offset().top -149
}, 300, function(){
window.location.hash = target;
});
});
});
</script>
...
“投资组合”部分在新页面中打开项目。我遇到了我正试图解决从项目回到主页的问题。如果需要,主页正确加载并直接跳到右侧部分,但我无法设置偏移,因此部分部分隐藏在导航菜单下。 希望现在更清楚了。我已经阅读了一些有关SO的问题,但无法使解决方案适合我的需要......再次感谢