Ya desde hace un tiempito he estado trabajando con JavaScript y gracias a la ayuda de todos en el foro he aprendido muchas cosas, y de igual forma he tratado de ayudar a otras... el problema esta parcialmente solucionado, gracias a un Script colocado por nuestra moderadora de este foro "tunait" su script permite abrir popup's desde una ventana principal y luego cerrar todas las que esten abiertas al momento de cerrar la pagina principal, pero yo encontre un detalle y quise modificarlo... haciendo que? desde hace tiempo trabaje abriendo paginas popups y si estan abiertas y procedo a hacer clilck nuevamente en ella desde la pagina principal solo le doy el focus sin refrescar su contenido, ahora uni los dos escript y me ha funcionado perfecto, pero pasa lo siguiente, si por casualidad se cierra un popup manualmente hasta alli llego la magia... resulta que no la abre nuevamente...
he tratado con la propiedad .closed pero nada que ver... pense en hacer otra funcion y colocarla en el evento onUnload de cada una de las pagina popup's y eliminar el registro que se carga en el vector que me indica cuales son las ventanas aviertas pero termine enredandome mas jejeje ya tengo dos dias en esto... aqui les dejo la funcion ya modificada, no estoy colocando el script original de Tunait, ya estoy colocando el modificado por mi persona. y no se porque pero seguramente es una tonteria que solo lo saben los que tienen mas experiencia en el asunto jejeje
Código:
<script language=Javascript>
//cerrar todas las ventanas. Script por tunait!
//http://javascript.tunait.com/
//[email protected]
//Modificado por er_duque
var Ventanas = new Array();
function centrarPopUp(url, width, height, nombre) {
//alert("entro a funcion");
var yes = 1;
var no = 0;
var menubar = no; // The File, Edit, View Menus
var scrollbars = yes; // Horizontal and vertical scrollbars
var locationbar = no; // The location box with the site URL
var directories = no; // the "What's New", "What Cool" links
var resizable = no; // Can the window be resized?
var status = no; // Status bar (with "Document: Done")
var toolbar = no; // Back, Forward, Home, Stop toolbar
var t;
e = false;
for(t = 0; t < Ventanas.length; t++){
if(Ventanas[t]==nombre){
e = true;
if (!Ventanas[t].closed){
alert("La opcion ya fue abierta.");
eval(Ventanas[t]).focus();
}else{
e = false;
}
break;
}
}
if ( window.screen ) {
var ah = screen.availHeight - 30;
var aw = screen.availWidth - 10;
var xc = ( aw - width ) / 2;
var yc = ( ah - height ) / 2;
var left = "" + xc + ",screenX=" + xc;
var top = "" + yc + ",screenY=" + yc;
}
features = "" +
"width=" + width + "," +
"height=" + height + "," +
"top=" + top + "," +
"left=" + left + "";
features += "" +
(menubar ? ",menubars" : "") +
(scrollbars ? ",scrollbars" : "") +
(locationbar ? ",location" : "") +
(directories ? ",directories" : "") +
(resizable ? ",resizable" : "") +
(status ? ",status" : "") +
(toolbar ? ",toolbar" : "");
if(!e){
eval(nombre+"=window.open('"+url+"','" + nombre + "','"+features+"')");
Ventanas[Ventanas.length] = nombre;
}
}
function cerrar(){
var m;
for(m=0;m<Ventanas.length;m++){
if(eval(Ventanas[m])){
eval(Ventanas[m]).close()
}
}
Ventanas.length = 0
}
</script>
de antemano muchas gracias... creo no tener mas nada que acotar, pero cualquier duda estare por aqui para tratar de solucionar... sigo pensando en la forma de usar otra funcion para el evento onUnload... asi creo que puede solucionar o mejor dicho yo lo puedo solucionar jejeje...
Saludos