elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  [Resuelto] Choque entre 2 Scripts, al colocar los 2 uno no se ejecuta
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Resuelto] Choque entre 2 Scripts, al colocar los 2 uno no se ejecuta  (Leído 2,084 veces)
Alarkon_88

Desconectado Desconectado

Mensajes: 70


Ver Perfil
[Resuelto] Choque entre 2 Scripts, al colocar los 2 uno no se ejecuta
« en: 11 Agosto 2018, 00:02 am »

Saludos, el problema es el siguiente tengo mi web y queiro colocar un script para que al tratar de salir de ella le diga al cliente que si esta seguro de salir ya que los cambios no se guardaran

ok todo bien hasta ahi pero tambien tengo un chat online de tawk.to y al colocar los 2 scripts juntos el primero que es el de confirmacion para cerrar la pagina no hace su funcion pueden probar el codigo

Código
  1. <title>Prueba de abandono de página</title>
  2.  
  3. SCRIPT 1
  4. <script language="javascript" type="text/javascript">
  5.  
  6.    var bPreguntar = true;
  7.  
  8.    window.onbeforeunload = preguntarAntesDeSalir;
  9.  
  10.    function preguntarAntesDeSalir()
  11.    {
  12.      if (bPreguntar)
  13.        return "¿Seguro que quieres salir?";
  14.    }
  15.  
  16.  
  17. </head>
  18. <h1>Ejemplo de abandono de página</h1>
  19. <p>Por defecto preguntará hasta que pulses el botón de "No preguntar"</p>
  20. <input type="button" value="Preguntar" onclick="bPreguntar = true;" >
  21. &nbsp;&nbsp;
  22. <input type="button" value="No preguntar" onclick="bPreguntar = false;" >
  23. <br/><br/>
  24. <a href="http://www.jasoft.org">Ir a otra página</a>
  25.  
  26. SCRIPT 2
  27.  
  28. var Tawk_API=Tawk_API||{}, Tawk_LoadStart=new Date();
  29. (function(){
  30. var s1=document.createElement("script"),s0=document.getElementsByTagName("script")[0];
  31. s1.async=true;
  32. s1.src='https://embed.tawk.to/5b558301df040c3e9e0bdbab/default';
  33. s1.charset='UTF-8';
  34. s1.setAttribute('crossorigin','*');
  35. s0.parentNode.insertBefore(s1,s0);
  36. })();
  37.  


« Última modificación: 23 Agosto 2018, 02:08 am por #!drvy » En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.850



Ver Perfil WWW
Re: Choque entre 2 Scripts, al colocar los 2 uno no se ejecuta
« Respuesta #1 en: 12 Agosto 2018, 17:12 pm »

Cuando usas esto:

Código
  1. window.onbeforeunload = preguntarAntesDeSalir;

Estas ree-escribriendo todo el evento. Tanto a ti como a cualquiera que lea estos temas, os recomiendo que os olvidéis de usar los eventos de esta forma y que deis de palos a los que lo siguen haciendo.



Empieza a usar event listeners en vez de re-escribir eventos enteros.
https://developer.mozilla.org/es/docs/Web/API/EventTarget/addEventListener

Código
  1. window.addEventListener('beforeunload', function(event) {
  2.  
  3.  var confirmationMessage = '¿Seguro que quieres salir?';
  4.  
  5.  event.returnValue = confirmationMessage;
  6.  return confirmationMessage;
  7. });

Saludos


En línea

Alarkon_88

Desconectado Desconectado

Mensajes: 70


Ver Perfil
Re: Choque entre 2 Scripts, al colocar los 2 uno no se ejecuta
« Respuesta #2 en: 14 Agosto 2018, 06:19 am »

Wow amigo excelente me funciono muy bien amigo pero ahora tengo otra duda, por ejemplo quiero que el script funcione al actualizar o cerrar la pagina solamente.

El problema surge al enviar un formulario, al presionar el botón de submit trata de redireccionar a otro archivo .html pero me sale el mensaje de alerta también como haría para que en esos casos no saliera la alerta, gracias.
« Última modificación: 14 Agosto 2018, 06:21 am por Alarkon_88 » En línea

Alarkon_88

Desconectado Desconectado

Mensajes: 70


Ver Perfil
Re: Choque entre 2 Scripts, al colocar los 2 uno no se ejecuta
« Respuesta #3 en: 15 Agosto 2018, 08:11 am »

Saludos, el problema fue solucionado por aca dejo el codigo para lo que tengan el mismo problema..

lo que hice fue colocar en el boton de submit onclick="mostrarPregunta(false)"

Código:
var bPreguntar = true;

function mostrarPregunta(pregunta) {
  bPreguntar = pregunta;
}

window.addEventListener('beforeunload', function(event) {
  if (bPreguntar) {
    var confirmationMessage = '¿Seguro que quieres salir?';

    event.returnValue = confirmationMessage;
    return confirmationMessage;
  }
});

y en el html

Código:
<input type="button" value="Preguntar" onclick="mostrarPregunta(true)">
<input type="button" value="No preguntar" onclick="mostrarPregunta(false)">
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Forma correcta de pasar información entre scripts?
PHP
Scratz 6 2,924 Último mensaje 26 Mayo 2010, 23:04 pm
por ~ Yoya ~
Circuito broma de choque eléctrico
Electrónica
Dznp 2 10,313 Último mensaje 30 Agosto 2010, 04:49 am
por Dznp
efecto animate() de jQuery se ejecuta pero no se aprecia la animacion [Resuelto]
Desarrollo Web
4rkn63l 2 2,929 Último mensaje 12 Marzo 2012, 06:15 am
por 4rkn63l
Colocar signos entre los datos de un array
Programación C/C++
FrnkdOU 2 3,745 Último mensaje 15 Septiembre 2020, 12:16 pm
por K-YreX
#if 0 ¿Se ejecuta? (Resuelto)
Programación C/C++
AlbertoBSD 8 4,034 Último mensaje 13 Abril 2021, 23:45 pm
por Danielㅤ
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines