Pregunta: | 47995 - PROBLEMAS CON EVENTO ONUNLOAD EN OPERA |
Autor: | Juanma |
Hola, estoy desarrollando una aplicación para IE, FireFox y Opera. En alguno de los popups e incorporado en el body el evento onunload, que se ejecuta bien en los 3 navegadores cuando hago mediante javascript un window.close().El problema me ha surgido cuando se cierra el popup con la X de la barra de titulo ya que cuando se hace ésto en Opera no se lanza el evento onUnload y no se por qué, sinembargo en IE y FireFox lo hace bien. Otra opción sería ocultar o poner disabled la X del popup,para obligar al usuario a dar un botón cerrar, pero no he visto forma de hacerlo.Me podriais dar alguna solución?? |
Respuesta: | Fabian Couto |
Supongo que la X es un texto o una imagen con un <a href> lo mejor que puedes hacer es en lugar de darle onclick="metodo javascript" darle el método en href="javascript:metodo()".
En el caso de que la X te refieras al boton de cerrar de Windows, lo mas probable es que tanto IExplore como FFX logren ejecutar a tiempo la función y Opera en su codificación interna no llegue a tiempo a ejecutarlo, suele suceder en los navegadores. Si es la segunda te recomiendo que deshabilites la opción de cerrar de windows y pongas una opción propia, hasta podrías mejorar el código y en lugar de hacer un popup, podrías crear una DIV en la página que se ubique delante del usuario, y que tenga un botón cerrar que deshabilite la DIV, esa puede ser una opción más inteligente. Espero haber podido ser de ayuda, saludos. |