Die Navbar funktioniert so gut wie die reibungslose Scroll, aber ich kann den Offset nicht ändern. Mein nav ist 86px, aber egal wie viele px ich es ändere geht immer noch an den gleichen Ort.Bootstrap Offset Scrollspy funktioniert nicht
$(document).ready(function() {
$('body').scrollspy({target: ".navbar", offset: 86});
$("#myNavbar a").on('click', function(event) {
if (this.hash !== "") {
event.preventDefault();
var hash = this.hash;
$('html, body').animate({
scrollTop: $(hash).offset().top
}, 800, function(){
window.location.hash = hash;
});
}
});
});
Ich habe die Info direkt zum Body-Tag hinzugefügt und immer noch keine Änderung. Ich weiß, dass jQuery funktioniert, da es glatt scrollt und das Kollapsed ebenfalls funktioniert.
<body data-spy="scroll" data-target=".navbar" data-offset="86">
OK danke das macht Sinn. Gibt es einen anderen Weg anstatt Padding zu verwenden, um einzustellen, wo die Seite endet, wenn Sie auf eine Navigationsleiste> ein Tag klicken? Im Moment habe ich das Container-Div die ID wie home über etc. – JonW
Die Seite blättert zu dem Element mit der entsprechenden ID, so dass Sie ein verstecktes Dummy-Element mit dieser ID hinzufügen und positionieren Sie es, wo Sie es möchten. –
Wenn dies Ihre Frage beantwortet, bitte als beantwortet markieren;) –