Conseguir que al pinchar en nodo raíz se muestren dos niveles

Inicio Forums Ayuda / Ajuda / Laguntza / Axuda / Help Conseguir que al pinchar en nodo raíz se muestren dos niveles

This topic contains 12 respuestas, has 2 voices, and was last updated by  PacoRuiz Hace 7 años, 4 meses.

  • Author
    Entradas
  • #28289

    PacoRuiz
    Member

    Hola a todos

    Describo lo que me gustaría conseguir, por si alguien puede ayudarme.
    Por defecto, cuando pincho el nodo raíz en un eXe quedan visibles únicamente los nodos hijos de este.
    Pues bien, en el nodo raíz principal me gustaría conseguir que:
    – si pincho una vez, se muestren sus nodos hijos (acción por defecto)
    – pero si pincho una segunda vez, se muestren los nodos hijos, y los hijos de estos también, es decir, dos niveles.
    – si sigo pinchando alternarían las dos opciones anteriores.

    Gracias de antemano
    Paco Ruiz

  • #28307

    Ignacio Gros
    Keymaster

    Hola Paco.

    Echa un vistazo a https://www.jstree.com/ o alguna solución parecida. De todas formas, ten en cuenta que eso puede despistar y afectar al nivel de accesibilidad del contenido.

    Saludos.

  • #28527

    PacoRuiz
    Member

    Gracias Ignacio, aunque por mucho que leo lo que me mandas sigo totalmente perdido.

    Un saludo

    • #28532

      Ignacio Gros
      Keymaster

      Hola Paco:

      Adjunto una prueba sencilla. Haz clic en los nodos con hijos. El código está en Propiedades – Pie de página.

      Espero que te sirva.

      Saludos.

      Archivos adjuntos:
      You must be logged in to view attached files.
  • #28549

    PacoRuiz
    Member

    Gracias Ignacio,
    mirando tú código y echando algunas horillas he conseguido lo que buscaba:

    — Al pinchar en INICIO, anternativamente se muestran los nodos principales (acción por defecto) y estos mismos junto a sus hijos directos (resto oculto) —

    INICIO
    Tema1
    Tema2
    Tema3
    (((clic en INICIO)))
    INICIO
    Tema1
    -Sección1
    -Sección2
    -Sección3
    Tema2
    -Sección
    Tema3

    En mi caso me sirve porque se ve el árbol como si fuera un ÍNDICE con dos niveles.
    Lo dejo por si alguna vez puede servir a alguien.

    Un saludo

    • This reply was modified Hace 7 años, 5 meses by  PacoRuiz.
    Archivos adjuntos:
    You must be logged in to view attached files.
  • #28554

    Ignacio Gros
    Keymaster

    Me alegro de que lo hayas solucionado.

    Gracias por compartirlo, Paco.

    Saludos.

  • #28566

    PacoRuiz
    Member

    Acudo de nuevo a ti Ignacio

    En mi solución, al dar clic al nodo principal el árbol se pliega/despliega como yo buscaba.

    Me surge un problema nuevo que acabo de darme cuenta.
    En mi función uso un return false; porque si no, se ejecutaría la acción por defecto en el enlace al hacer clic, y esta anularía mi pliegue/despliegue.
    Pero claro, si quito la acción por defecto del clic, el exe no se me va a la página principal index.html, se queda siempre en la que está activa en ese momento.
    ¿Sabrías que código tendría que añadir para ello, o qué otro enfoque podría darle?

    Gracias de antemano

    • This reply was modified Hace 7 años, 4 meses by  PacoRuiz.
    • This reply was modified Hace 7 años, 4 meses by  PacoRuiz.
  • #28577

    Ignacio Gros
    Keymaster

    Hola Paco.

    Contesto un poco tarde. Igual ya lo has resuelto.

    Para ir a otra página: window.location = 'tu_destino.html'

    Otra opción es quitar el return false.

    Pero creo que hay algo que no entiendo de tu pregunta, porque me parecido que si haces eso no tendría sentido lo de desplegar el menú.

    El ejemplo que adjunté estaba pensado para evitar el paso por páginas intermedias (páginas que no contienen más que accesos directos a sus páginas hijas).

    ¿Me puedes pasar una descripción de lo que quieres o pasarme un enlace a un ejemplo?

    Saludos.

  • #28579

    PacoRuiz
    Member

    Hola Ignacio

    Dos entradas mías más arriba está cómo quedó mi solución (ahora sé que incompleta).
    Lo que me mandaste lo tuve que cambiar porque no me servía con el nodo principal (Inicio), tuve que localizar los nodos de otra forma.

    Ya había probado lo que me envías ahora, y si lo pongo me desactiva el despliegue-y-repliegue de mi árbol.

    Estoy un poco atascado, a ver si se te ocurre algo para orientarme.

    Gracias

  • #28581

    Ignacio Gros
    Keymaster

    Es que creo que no he entendido bien qué necesitas. ¿Puedes describir los pasos a seguir -clics y comportamiento- partiendo de tu elp de ejemplo (prueba_navegacion_desplegable-1.elp), por favor?

  • #28582

    PacoRuiz
    Member

    Describo lo que quiero, a ver si además consigo hacerme ententer.

    En el eXe que te envío quiero que:

    – Si pincho en INICIO, cada Tema muestre sus Secciones
    (por eso digo que se vean dos niveles, Tema-y-Sección).
    – Si pincho de nuevo en INICIO, cada Tema debe ocultar sus Secciones
    – Alternativamente se darían los dos casos anteriores si sigo pinchando en INICIO.

    El ejemplo que te envío ya hace esto que indico arriba.

    Sin embargo, si por ejemplo estoy en Sección1-del-Tema1 y pincho en INICIO,
    no consigo que se vea la ventana correspondiente a INICIO (sigue viéndose la de Sección1).

  • #28584

    Ignacio Gros
    Keymaster

    ¿Te serviría ejecutar tu código sólo en index.html? Algo así:

    if (window.location.href.indexOf("/index.html")!=-1) {
    	// Tu código
    }
  • #28586

    PacoRuiz
    Member

    Cambiando los “slides” por hide/show sí queda todo homogéneo.
    Con eso me es suficiente.

    Gracias Ignacio

    Dejo el eXe por si le sirve a alguien.

    Archivos adjuntos:
    You must be logged in to view attached files.

You must be logged in to reply to this topic.

Skip to content