Foros del Web » Programando para Internet » Javascript »

Problema History.Back()

Estas en el tema de Problema History.Back() en el foro de Javascript en Foros del Web. Hola a todos! Os comento mi problema a ver si alguien me puede dar una solución. Estoy haciendo una web, donde todas las paginas deben ...
  #1 (permalink)  
Antiguo 26/08/2009, 05:54
 
Fecha de Ingreso: agosto-2009
Mensajes: 14
Antigüedad: 14 años, 8 meses
Puntos: 0
Problema History.Back()

Hola a todos!

Os comento mi problema a ver si alguien me puede dar una solución.

Estoy haciendo una web, donde todas las paginas deben de llevar un botón de volver, que emule el botón de forward del navegador, según todo lo que he leido con usar un history.back(), en cada página valdría, pero tengo un problema:

CON BOTON DE NAVEGADOR:
Pagina 1 -> navego a Pagina 2.
Pagina 2 -> navego a Página 3.
Página 3 -> le doy al botón de volver del navegador, vuelve a página 2.
Página 2 -> le doy al botón de volver del navegador, vuelve a página 1.

Todo perfecto, ahora con los botones de VOLVER que he incluido ( todoso con un history.back() ).

Pagina 1 -> navego a Pagina 2.
Pagina 2 -> navego a Página 3.
Página 3 -> le doy al botón de volver vuelve a página 2.
Página 2 -> le doy al botón de volver , vuelve a página 3. (esto tiene lógica ya que la última página visitada ha sido la página 3 )


se seguís la secuencia lógica, es como si en el array del historial, cuando haces un history.back() no sacara del array la úlima página, asi que si que entra en una especie de bucle. He probado con history.go(-1) y tampoco funciona.

Me resulta extraño porque he buscado exaustivamente por internet y nadie parece tener el mismo problema, he probado a crear una secuencia de páginas desde 0, sin más codigo que el de los botones, y pasa lo mismo, osea que no es por algo que esté interfiriendo en el primer caso.

Quizas se podría solucionar quitando el último registro del array de historial, cada vez que hago un history.back(), pero la cuestion es no complicarse la vida, y saber si hay alguna solución mas lógica.

saludos y gracias de antemano.
  #2 (permalink)  
Antiguo 26/08/2009, 08:59
 
Fecha de Ingreso: agosto-2009
Mensajes: 14
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Problema History.Back()

Bueno ya encontre el problema, aunque no entiendo muy bien porque me sucede.
He metido el history.back directamente en el href asi:

Código HTML:
<a href="javascript: history.back();">Volver</a> 
Antes lo tenia asociado al evento click de la etiqueta y era cuando no me funcionaba correctamente.

saludos!
  #3 (permalink)  
Antiguo 26/08/2009, 11:29
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Problema History.Back()

probablemente no te funcionaba porque estaba haciendo dos redirecciones: la del back y la del href. para que funcionara, tenias que cancelar la accion predeterminada de ese elemento. en este caso, el elemento <A> y la accion predeterminada es llevarte al documento indicado en href. y para cancelar, simplemente tenias que devolver false en el evento.
Código:
<a href="..." onclick="history.back(); return false;">link</a>
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #4 (permalink)  
Antiguo 26/08/2009, 12:17
 
Fecha de Ingreso: agosto-2009
Mensajes: 14
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Problema History.Back()

Efectivamente, era por eso, he estado haciendo pruebas ( ya sabeis no me quedo tranquilo sin saber el porque de un problema que he conseguido solucionar ) y era eso lo que pasaba, buena obsevacion! :D
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:03.