Primero que nada por reglas del foro, no debo revivir temas con mas de 6 meses de antiguedad, posteo este nuevo tema con un problema quiza un poco mas complejo
En este foro (muy util por cierto) encontre una solución "parcial" a mi problema, el cual es el usar codigo JS solo la primera vez que se ejecuta onload en el tag <body> de mi página web (la cual usa php con includes) y el cual Artificium ayudo en la solucion de este tema:
Cita:
El codigo arriba mencionado, funciona perfectamente con todo JS dentro del condicionador IF.
Iniciado por Artificium
...al principio de tu achivo pones esto, supongo que iría en el archivo donde defines el encabezado.
Código:
En la parte final de archivo colocas esto:<?php session_start(); ?>
Código:
En la parte de tu función JavaScript harías algo así:<?php $_SESSION['ss'] = 1; // en lugar de 'ss' puedes poner lo que te da la gana ?>
Código:
function loadLytebox(id) { var ss = '<?php echo $_SESSION['ss'] ?>'; /*Obviamente si cambias el otro 'ss' debes cambiar también este */ if (!ss) { // Esto se ejecutaría solamente en la primera carga del archivo, mas no en las siguientes } }
Descripcion de mi página: Mi pagina esta basada en el gestor "Joomla", es decir usa php con includes y en esos includes está la etiqueta <body>, la cual cada vez que pase de una pagina a otra se llamara al evento onload (el cual manda llamar a su vez la funcion loadLytebox). Y este codigo ayuda ajecutar el JS solamente 1 vez a pesar de llamar nuevamente al evento onload.
Descripcion del problema: Mencioné al principio que para mi era una solución "parcial", por que lo que necesito es que se ejecute una sola vez pero... cada vez que vuelva a entrar a la pagina necesito que se ejecute de nuevo, lo cual este codigo no hace.
Es decir; cargo mi pagina web por primera vez, se ejecuta el codigo perfectamente una sola vez mientras navego en mi pagina y luego cuando cierro la pestaña o salgo de esa pagina web a otra y y nuevamente entro a mi pagina web... ya sea en una pestaña nueva o en la misma... el codigo JS ya no se ejecuta...
Posible solución: Busque varias opciones como borrar cookies, hacer unset la variable $_SESSION['ss'], usar el codigo PHP session_destroy(), o incluso tratar de cambiar el valor de la variable, siempre accionado por el evento onunload pero... sin resultados... quiza por mi nula experiencia en estos lenguajes no pude hacerlo funcionar.
Espero me puedan ayudar y muuuchas gracias de antemano por la ayuda a este pobre novato :D