Javascript 引导导航栏未使用平滑滚动脚本折叠
我在一个单页网站上使用引导导航栏,每个锚都链接到页面上的一个部分。我使用一个非常简单的javascript来平滑滚动到每个部分,但是这与导航栏的折叠功能有冲突——当我点击一个链接时,它不再折叠,这很烦人。我最初认为这可能是一个HTML问题(在这里解决:),但后来发现这是一个JS问题——有什么想法吗 HTML:Javascript 引导导航栏未使用平滑滚动脚本折叠,javascript,twitter-bootstrap,navbar,collapse,smooth-scrolling,Javascript,Twitter Bootstrap,Navbar,Collapse,Smooth Scrolling,我在一个单页网站上使用引导导航栏,每个锚都链接到页面上的一个部分。我使用一个非常简单的javascript来平滑滚动到每个部分,但是这与导航栏的折叠功能有冲突——当我点击一个链接时,它不再折叠,这很烦人。我最初认为这可能是一个HTML问题(在这里解决:),但后来发现这是一个JS问题——有什么想法吗 HTML: <nav class="navbar navbar-default mainbar" role="navigation"> <div class="navbar-
<nav class="navbar navbar-default mainbar" role="navigation">
<div class="navbar-header">
<button type="button" class="navbar-toggle hvr-bounce-to-bottom collapsed" data-toggle="collapse" data-target="#my-navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="collapse navbar-collapse" id="my-navbar-collapse">
<ul class="nav navbar-nav">
<li><a data-toggle="collapse" data-target=".navbar-collapse" href="#link1" class="navelement">Link 1</a></li>
<li><a data-toggle="collapse" data-target=".navbar-collapse" href="#link2" class="navelement">Link 2</a></li>
</ul>
</div>
</nav>
您可以使用jQuery:notselector实用程序 e、 g 或者在你的例子中:
var corp = $("html, body");
$(".navelement:not([data-toggle=collapse])").click(function() {
var flag = $.attr(this, "href");
corp.animate({
scrollTop: $(schild).offset().top - 60
}, 1600, function() {
window.location.hash = flag;
});
return false;
});
你找到这个问题的解决办法了吗?不是现在,我找不到。。。
$('a[href*=#]:not([href=#], [data-toggle=collapse])').click(function(){...})
var corp = $("html, body");
$(".navelement:not([data-toggle=collapse])").click(function() {
var flag = $.attr(this, "href");
corp.animate({
scrollTop: $(schild).offset().top - 60
}, 1600, function() {
window.location.hash = flag;
});
return false;
});