¡¡El niño perdió a su padre !!Función de llamada en la ventana de apertura
Tengo una ventana principal, cuando alguien hace clic en una imagen se abre una ventana emergente JS y muestra la foto y su información.
Para cerrar la ventana emergente/hijo y a parpadear un elemento en la ventana de mi padre/abridor, he estado utilizando esta función:
function closeWindow() {
var currentID = document.getElementById('currentID').value;
window.opener.flashElement(currentID);
window.close();
}
Mi problema es el siguiente no funciona si mis usuarios a navegar lejos de la página que se abrió originalmente. Por ejemplo, en la ventana emergente, hay botones siguiente y anterior para desplazarse por las fotos individuales en ese conjunto de resultados, que vuelve a cargar la página con un nuevo valor de cadena de consulta.
Si mi usuario se desplaza (recarga la página) menos de 7 veces, está bien, pero si se desplazan más, la función window.opener
no funciona, y debido a eso, la función window.close
tampoco.
Probablemente podría reconstruir la página para que los datos lleguen a través de una llamada AJAX, en lugar de volver a cargar la página, pero eso es mucho trabajo que podría prescindir.
¿Alguna idea?
¿Cuándo se llama a la función 'closeWindow()'? Cuando el usuario hace clic en un botón "cerrar" o algo similar? Y para ser totalmente claros, 'closeWindow()' está en la ventana secundaria, ¿correcto? –
posible duplicado de [Ventana emergente.Operador redirigido o cerrado] (http://stackoverflow.com/questions/5872721/popup-window-opener-redirected-or-closed) –
@JackieChiles sí closeWindow() se invoca cuando los usuarios hace clic en un botón de cerrar y CloseWindow() está en la ventana secundaria. Como digo, funciona bien si el usuario no recarga la ventana emergente más de 7-8 veces. – TheCarver