AJAX - Actualizar imagen junto a su URL asociada (AJAX?)

 
Vista:

Actualizar imagen junto a su URL asociada (AJAX?)

Publicado por Félix (2 intervenciones) el 16/09/2015 01:04:39
Hola, tengo una consulta cuya respuesta no he logrado encontrar, por más que lo he intentado. Si ya está discutido en el foro, les pido mil disculpas y les agradezco que me indiquen dónde se respondió.

Mi consulta es la siguiente:

Tengo una galería de imágenes que permite seleccionar una de las imágenes y abrir un popup para visualizarla en grande (tal cual lo hace facebook), de tal manera que si el usuario quiere seguir viendo otras imágenes, puede pulsar un botón "siguiente", uno "atrás" (o hacerlo con las teclas "izquierda" o "derecha"), y si quiere salir de la visualización, sólo debe clickear el background traslúcido del popup, para volver a la galería.

Dado este contexto, si el usuario quisiera compartir una imagen de las que está visualizando, sólo compartiría la dirección de la galería, sin una URL asociada a la imagen, entonces decidí buscar material sobre AJAX para poder modificar contenido mediante el método GET sin necesidad de recargar la página completa. ¿Para qué? Para que al abrir una imagen, ésta tenga una URL asociada, y si cambia de imagen, cambie también la URL.

Lo logré, pero la URL que aparece en la barra de direcciones del navegador NO cambia. Pensé entonces en cambiarla por código y hacer algunos malabares para que la galería funcione como quiero, pero no fue difícil pensar que debe haber algún método más óptimo/limpio, alguna técnica pensada para hacer eso, o algún lenguaje pensado para eso.

Agradezco enormemente que me puedan sugerir material para encontrar lo que estoy buscando.

Saludos cordiales
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Vainas
Val: 47
Ha mantenido su posición en AJAX (en relación al último mes)
Gráfica de AJAX

Actualizar imagen junto a su URL asociada (AJAX?)

Publicado por Vainas (71 intervenciones) el 19/09/2015 11:06:15
Buenas:

La verdad es que he entendido a medias tu problema.

No se si quieres traer las fotos mediante ajax para mostrar al cliente o por otro lado expones que al modificar la url para compartirla que al abrirla alguien entre directamente en la foto?

Yo modificaria la url asi: www.midominio.com/galeria/index.php#fotoactual.

De esta manera sigues estando dentro de la galeria y solo agregas un anclaje a la ruta. Lo siguiente sera que cuando alguien entre a la galeria lo primero que tendras que hacer es comprobar la ruta de la url y si lleva algun #fotoactual lanzar tu codigo que despliega la foto con ese dato que pasas.

Para ir modificando la url solo tienes que mirar si la libreria que usas para abrir las fotos tiene algun evento que se lance cuando haces el cambio de una foto a otra.

Sin codigo es muy dificil decirte mucho mas.

Espero que se entienda.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Actualizar imagen junto a su URL asociada (AJAX?)

Publicado por Félix (2 intervenciones) el 05/10/2015 05:04:50
Gracias por tu respuesta, Vainas.

Lo que hice en definitiva fue utilizar ajax + pushstate(), así puedo cargar el contenido y a la vez cambiar la url sin que se dispare la recarga completa de la página.

Si quieres, puedes ver cómo quedó: chilepiecitos.cl/albumesf.php?album=0

Si le das click a una imagen, se abre la visualización de ésta y se le asocia una url nueva: chilepiecitos.cl/albumesf.php?album=0&foto=01

Si en la visualización cambias la imagen, también cambia la url.

Lo que hace pushstate() es cambiar la url y además agrega la dirección al stack del historial de navegación, de tal forma que puedes disponer de avanzar o retroceder en el historial, a pesar de no haber cargado realmente una página nueva.

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar