Questo è fondamentalmente un'estensione delle risposte precedenti ma li attuato leggermente differente per un approccio più integrato. Non mi aspetto punti per originalità ma forse questo può aiutare qualcuno.
Come accennato nella risposta precedente, aggiungere il) sceneggiatura scrollTo (:
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery-scrollTo/1.4.3/jquery.scrollTo.min.js"></script>
Nel file bootstrap.js ritrovamento:
// SCROLLSPY CLASS DEFINITION
// ==========================
Nelle dichiarazioni delle variabili, proprio sotto this.process()
aggiungere il variabile:
this.scroll()
Poi proprio sotto il 012.la funzione, e soprattutto:
// SCROLLSPY PLUGIN DEFINITION
// ===========================
aggiungere il metodo di scorrimento():
ScrollSpy.prototype.scroll = function (target) {
$('#spyOnThis').bind('click', 'ul li a', function(event) {
$.scrollTo(event.target.hash, 250);
});
};
Questo ha funzionato per me. Grazie ancora per i consigli utili di cui sopra.
fonte
2014-01-11 17:46:27
Un po 'più di aiuto sarebbe bello! Dove esattamente metto il comando scrollTo, ad es. '$ .scrollTo ('#' + target ', 1000);'? – thv20
Lo scrollspy non gestisce il movimento dell'elemento, questo viene fatto in modo nativo dal browser.Tutte le spie di scorrimento fa è modificare l'elemento selezionato mentre l'utente scorre. Ecco una rapida implementazione di scrollTo che dovrebbe aiutare: http://jsfiddle.net/flabbyrabbit/69z7x/ – FlabbyRabbit
Brillante! Un'ultima domanda, posso impostare un offset superiore? Si prega di vedere qui per riferimento: http://jsfiddle.net/69z7x/5/ Quindi qui ci sarebbe un offset 200px. – thv20