Ho impostato una pagina utilizzando il bootstrap. (http://ethnoma.org/about.html) Ho una barra laterale di navigazione che è apposta (che funziona benissimo). Sto anche usando lo scrollstrap di bootstrap su questa navigazione e tutti i link nella navigazione sono all'interno della stessa pagina (usando gli ancors). Tutto funzionava perfettamente (anche con un plugin smooth-scroll aggiunto). Ho semplicemente dovuto chiamare questo script per forzare Scrollspy ad aggiornare dopo che tutti i contenuti sono stati aggiunti alla pagina (che ho inserito nello <head>
).Immagini mobili su Bootstrap Scrollspy
<script type="text/javascript">
// ScrollSpy
$(function() {
$('[data-spy="scroll"]').each(function() {
var $spy = $(this).scrollspy('refresh')
});
});
</script>
Il mio cliente mi ha quindi chiesto di aggiungere immagini alla pagina. Ho fatto in modo da utilizzare le classi di markup e CSS bootstrap come la seguente:
<a class="pull-right pad5" href="#">
<img class="media-object img-polaroid" src="assets/img/about-001.jpg" alt="Partnership"/>
</a>
Il che rende il genitore "a" tag float a destra (in questo caso) e rende l'img in un elemento di blocco.
Il problema è che queste immagini flottate rendono la pagina più lunga di quanto non fosse in origine. Tuttavia Scrollspy sta ancora commutando il link attivo nello stesso posto. Ciò fa sì che lo scrollspy attivi i collegamenti per i contenuti più in basso nella pagina di quanto non lo siano attualmente.
Sono in perdita per come forzare Scrollspy a prendere in considerazione le immagini floate quando si calcola la posizione dell'ID a cui il collegamento degli antenati. Qualcuno di voi ha un'idea di come potrei sistemarlo. È possibile visualizzare il problema in vigore nella seguente pagina http://ethnoma.org/about.html