Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/08/2005, 13:59
Er_Duque
 
Fecha de Ingreso: abril-2005
Mensajes: 92
Antigüedad: 19 años, 4 meses
Puntos: 0
Problema con PopUp al cerrarlo e intentar abrirlo nuevamente

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
__________________
Er_Duque