Ayuda con ScrollSpy

glolg

Buenas,
Algo me falla con el scrollspy de Bootstrap.
Lo tengo hecho de la siguiente forma:

        <div class="accordion" id="accordion2"  data-spy="scroll" data-target="#isq">
            <?php portada(); ?>
        </div>

En portada() cargo con un while entradas como esta:

<div class="accordion-group" id="02/2013" name="02/2013">...</div>

Ahora el navegador que tendría que hace de scrollspy

<div class="span3 bs-docs-sidebar" style="margin-left: -150px; text-align: right; opacity: 0.75;" id="func">
<ul class="nav nav-list bs-docs-sidenav affix" id="isq">
          <li><h5><i class="icon-fire"></i>Historial</h5></li>
          <li><a href="#04/2013"><i class="icon-chevron-right"></i>04/2013 (6)</a></li>
          <li><a href="#03/2013"><i class="icon-chevron-right"></i>03/2013 (1)</a></li>
          <li><a href="#02/2013"><i class="icon-chevron-right"></i>02/2013 (4)</a></li>
          <li><a href="#01/2013"><i class="icon-chevron-right"></i>01/2013 (6)</a></li>
</ul>
</div>

En el head tengo lo siguiente, a parte de las principales de bootstrap responsive y jquery.

<script src="/proyecto/bootstrap/js/bootstrap-scrollspy.js"></script>
<script>$('#isq').scrollspy();</script>

Y estilos extra:

    <style>
        .nav li a:hover{
            color: #f33 !important;
            background: none;
        }
        .nav li.active a{
            color: #f55;
            text-decoration: underline;
        }
    </style>

No hace lo que debería, ni se le añade el class="active" , ni hace la función del hover ni nada..

Hasta ahora lo había hecho así, lo que estoy ofuscado, saturado y de mala hostia. A ver si alguien ve lo que está pasando.

Gracias !!

JuAn4k4

Prueba con

$(document).ready(function() {

  $('#isq').scrollspy();

});

Abre la consola (F12 en chrome) y mira a ver si sale algun error o algo.

1 respuesta
glolg

#2 nada :(

0 errores

JuAn4k4

Pon un link al scrollspy ese, que no se cual usas que por lo visto hay forks.

Puede ser por el id con la "/"

1 respuesta
glolg

#4 lo uso aquí

Ahora probaré de quitar la "/" a ver si es eso.

JuAn4k4

Encontre
http://jsfiddle.net/xjTpk/48/

Veo que el id=isq lo tiene el padre del<ul> ,y no el <ul>

1 respuesta
glolg

#6 el problema era el slash maldito "/". Lo que aun sigue sin ir bien, se marca como activa la última pero no activa las demás.

Probaré hacer solo una referencia de id por cada mes, a ver si se está volviendo chalado.

EDIT: #6 solucionado estaba invocando mal a la función de scrollspy

<script>
 $(document).ready(function() {
 $('body').scrollspy({target: '#isq'});
});
</script>

Usuarios habituales

  • glolg
  • JuAn4k4