Foros del Web » Programando para Internet » Javascript »

Pedir confirmacion al cerrar ventana pero no al atras o adelante (tengo una idea)

Estas en el tema de Pedir confirmacion al cerrar ventana pero no al atras o adelante (tengo una idea) en el foro de Javascript en Foros del Web. Estoy buscando hacer una encuesta de 2 o 3 options justo antes que el visitante salga de mi sitio... Para ello estoy intentando mostrar una ...
  #1 (permalink)  
Antiguo 22/12/2011, 07:18
 
Fecha de Ingreso: marzo-2006
Mensajes: 35
Antigüedad: 18 años, 1 mes
Puntos: 2
Exclamación Pedir confirmacion al cerrar ventana pero no al atras o adelante (tengo una idea)

Estoy buscando hacer una encuesta de 2 o 3 options justo antes que el visitante salga de mi sitio...

Para ello estoy intentando mostrar una confirmacion de salida en estos casos (luego lo reemplazare por la encuesta)

Es decir, cuando cierra la ventana pedir confirmacion.
Cuando vuelvo para atras y salgo de mi sitio.

No deberia pedir confirmacion cuando preciono el boton atras o adelante mientras estoy en mi sitio...



Codigo para pedir o no confirmacion en los links.
Código HTML:
<script type="text/javascript">
var ns={confirmar:1}
window.onbeforeunload = function(){
    if(ns.confirmar){
        return 'chau';    
    }
}
</script>

<a  href="http://www.google.com/">ir a google con confirmación</a> | <a onclick="ns.confirmar=0"  href="http://www.google.com/">ir a gooogle sin confirmación</a> 

Podria verificar el dominio y si es igual confirmar o no... pero como el codigo se ejecuta en mi sitio siempre va a ser igual...

Tengo una idea... seria realizar un contador incremental cada vez que el usuario hace click en un link...

Cuando ingresa a la web vale 1...
pasa a otra seccion suma y vale 2,
pasa a otra suma y vale 3,
apreta atras... va a valer 2... (no?)
apreta atras va a valer 1...
onbeforeunload y contador == 1 --> pide confirmacion.

y a la vez si se cierra desde la X deberia pedirla.

Se podra hacer?... que opinan?
La idea seria hacerlo de alguna manera que no necesite agregar variables a los links... es decir modificando lo menos posible.
  #2 (permalink)  
Antiguo 22/12/2011, 11:13
Avatar de Dnielf  
Fecha de Ingreso: diciembre-2008
Ubicación: 127.0.0.1
Mensajes: 72
Antigüedad: 15 años, 4 meses
Puntos: 14
Respuesta: Pedir confirmacion al cerrar ventana pero no al atras o adelante (tengo un

Mejor usa el History API de HTML5 que intercepta el cambio de página o localStorage también.
http://html5demos.com/history
  #3 (permalink)  
Antiguo 04/01/2012, 06:36
 
Fecha de Ingreso: marzo-2006
Mensajes: 35
Antigüedad: 18 años, 1 mes
Puntos: 2
Respuesta: Pedir confirmacion al cerrar ventana pero no al atras o adelante (tengo un

hola Dnielf
Habia visto esa api pero no logre usarla como necesito... quiza no se me ocurrio como implementarla.

Han visto alguna pagina web que haga eso?
  #4 (permalink)  
Antiguo 04/01/2012, 08:56
 
Fecha de Ingreso: marzo-2006
Mensajes: 35
Antigüedad: 18 años, 1 mes
Puntos: 2
Respuesta: Pedir confirmacion al cerrar ventana pero no al atras o adelante (tengo un

Miren... hize un codigo nuevo:

Código:
<input id="pagina_num" type="text" value="" />

<?php
if(!isset($_GET['pagina_num'])){
	$_GET['pagina_num']=0;
}
$_GET['pagina_num']=$_GET['pagina_num']+1;
?>


<script type="text/javascript">
<!--
var pagina_num = <?php echo $_GET['pagina_num']; ?>;
document.getElementById('pagina_num').value = pagina_num;


window.onbeforeunload = encuesta();

function encuesta(){
	if(document.getElementById('pagina_num').value=='1'){
                alert("Te hago la encuesta Mother fucker");
	}else{
		alert("Sigue navegando... "+document.getElementById('pagina_num').value);
	}
}
-->
</script>

 <a href="index.php?pagina_num=<?php echo $_GET['pagina_num']; ?>">seccion 1</a>
 <a href="index2.php?pagina_num=<?php echo $_GET['pagina_num']; ?>">seccion 2</a>

En esencia lo que hace este codigo es que cuando hace click en un vinculo suma a la variable 'pagina_num',
pero cuando voy hacia atras adelante no suma ni resta. Sino que levanta el valor que tenia la pagina.

Por lo tanto si el usuario entra a mi pagina. y presiona atras podria mostrarle la encuesta.
Lo mismo si navega por 2 o 3 paginas y vuelve para atras (2 o 3 veces).

El problema que tengo que onbeforeunload se esta ejecutando cuando carga la pagina (O.o)

Si lo quieren probar hagan 2 paginas iguales y ponganle el nombre de los links.
  #5 (permalink)  
Antiguo 06/01/2012, 06:53
 
Fecha de Ingreso: marzo-2006
Mensajes: 35
Antigüedad: 18 años, 1 mes
Puntos: 2
Respuesta: Pedir confirmacion al cerrar ventana pero no al atras o adelante (tengo un

Que manga de amargos... al final el unico que dijo algo tiro el link de una api, que obvio antes de postear aca ya habia visto porque google-e. por eso solo tengo 32 msj escritos... porque googleo y siempre encuentro las respuestas antes de necesitar peguntar.

La idea es poder identificar la causa del porcentaje de rebote (o almenos un porcentaje).
Ta bien mescle Javascript con PHP (no creo que eso haya sido el motivo de no responder).

La verdad que me decepciono el foro.
... que nisiquiera debatan ideas... que quiza no sean realizables es verdad.

Seguramente ya voy a encontrar la respuesta, no me rindo asi de facil, pero uds no la van a conocer.

Etiquetas: atras, cerrar, confirmacion, pedir, botones, ventanas
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 03:45.