Foros del Web » Programando para Internet » Javascript »

Pasar objeto window entre paginas.

Estas en el tema de Pasar objeto window entre paginas. en el foro de Javascript en Foros del Web. Hola a todos. Les comento mi problema. Resulta que estoy creando esta página con carrito de compras que se abre al hacer click ,y genera ...
  #1 (permalink)  
Antiguo 27/02/2014, 05:47
 
Fecha de Ingreso: febrero-2014
Ubicación: Rosario
Mensajes: 59
Antigüedad: 10 años, 2 meses
Puntos: 2
Pasar objeto window entre paginas.

Hola a todos.
Les comento mi problema.
Resulta que estoy creando esta página con carrito de compras que se abre al hacer click ,y genera una nueva ventana con el carrito.
Pero lo que quiero lograr es que el objeto "ventana" siga estando accesible para las páginas a las que me dirijo desde la principal.
O sea,en la ventana principal,hago click en comprar y se abre el popup con el carrito.
Desde la ventana principal hago click en un enlace a otra página del mismo dominio (localhost) y quiero que esa página destino pueda acceder y manipular la ventana "carrito".He tratado de pasar la referencia del objeto "ventana" (que es el nombre del carrito de compras) a través de la url añadiendo al final el signo "?" y una variable que indica que se pasó una referencia que va a ser leída por una función javascript en la página destino del enlace.
Ya probé con eval para ejecutar esa referencia en la pagina destino,probé con escape() por si acaso la referencia contuviera espacios,leyendo la url como si se tratara de una variable enviada con el método get,y nada.

Les paso el código para que me puedan guiar.
Desde ya les agradezco.

Código fuente de "funciones_web.js":
Código:
function desplegar(seccion) {
	if (seccion=="Belleza_interior")
		document.getElementById(seccion).style="position:absolute; display:block ; top:40px; left:35%;" ;
	else if (seccion=="reino_beauty")
		document.getElementById(seccion).style="position:absolute; display:block ; top:40px; left:70%;" ;
	else if (seccion=="fragancias")
		document.getElementById(seccion).style="position:absolute; display:block ; top:40px; left:60%;" ;
					
	else document.getElementById(seccion).style="position:absolute; display:block ; top:40px;" ;
}

function enrollar(seccion) {
	document.getElementById(seccion).style="display:none";
}

function crearelemento(str) {
	var elemento = document.createElement("p");
	var texto = document.createTextNode(str);
	elemento.appendChild(texto);
	return elemento;
}
		
ventana = null;
		
function cargar_chango(nodo,prod){
	if ( ventana == null ) {
		ventana = open("","Chango","scrolling=yes",false);
		ventana.document.write("<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01//EN' 'http://www.w3.org/TR/html4/strict.dtd'><br>");
		ventana.document.write("<html><head><meta http-equiv='content-type' content='text/html; charset=ISO-8859-1' /><style type='text/css' >#marco { width:25%; margin: 0 auto; text-align:center;}  a:visited { color:blue; }</style></head><body><div id='marco' ><a href='#' onclick='javascript:opener.ventana = null;self.close();'>Cerrar ventana.</a></div></body></html>");
		var producto = crearelemento(prod);
		var ultimo = ventana.document.getElementById("marco").lastChild;
		ventana.document.getElementById(nodo).insertBefore(producto,ultimo)
	}
	else {
		ventana.focus();	
		var producto = crearelemento(prod);
		var ultimo = ventana.document.getElementById("marco").lastChild;
		ventana.document.getElementById(nodo).insertBefore(producto,ultimo);
	}
}

function direccion(dir) {
	if ( ventana != null ) {
		var referencia = "referencia=" + ventana;
		dir += "?" + referencia;
		window.location = dir;
		return false;
	}
	
	return true;
}

function capturar() {
	if ( window.location.href.indexOf("referencia") ) {
		var indice = location.href.indexOf("referencia=") + 11;
		var referencia = eval(location.href.slice(indice));
		ventana = referencia;
	}
}
Código fuente de la página que abre la ventana carrito y que quiero que le pase la referencia a otra página que es destino de las imágenes.
Código:
<!DOCTYPE html>
<html>
	<head>
		<title>Ventas Reino.</title>
		<link rel="stylesheet" type="text/css" href="estilos_web.css" />
		<script type="text/javascript" src="funciones_web.js">
		</script>
	</head>
	<body>
		<br>
		<div id="pagina">
			<div id="cabecera" >
				<a href="#" onmouseover="desplegar('menu_capilares');" onmouseout="enrollar('menu_capilares');">Capilares</a>
				<a href="#" onmouseover="desplegar('cuidado_facial');" onmouseout="enrollar('cuidado_facial');">Cuidado facial</a>
				<a href="#" onmouseover="desplegar('cuidado_corporal');" onmouseout="enrollar('cuidado_corporal');">Cuidado corporal</a>
				<a href="#" >Chicos</a>
				<a href="#" onmouseover="desplegar('Belleza_interior');" onmouseout="enrollar('Belleza_interior');" >Belleza interior</a>
				<a href="#" onmouseover="desplegar('fragancias');" onmouseout="enrollar('fragancias');" >Fragancias</a>
				<a href="#" >Aromas</a>
				<a href="#" onmouseover="desplegar('reino_beauty');" onmouseout="enrollar('reino_beauty');" >Reino beauty</a>
			 
				<div id="menu_capilares" onmouseover="desplegar('menu_capilares');" onmouseout="enrollar('menu_capilares');">
					<a href="Capilares/Almendras/bano_de_crema_con_jojoba_y_almendras_DA101.html" > L&iacute;nea almendras</a>
					<a href="Capilares/Bamboo/shampoo_bamboo_ultrahidratante_CI102.html" > L&iacute;nea bamboo</a>
					<a href="Capilares/Hair_solutions/shampoo_de_aminoacidos_HS103.html" > L&iacute;nea hair solutions</a>
					<a href="Capilares/Henna/shampoo_henna_OC106.html" > L&iacute;nea henna</a>
					<a href="Capilares/Lino/shampoo_con_extracto_de_semillas_de_lino_LN100.html" > L&iacute;nea lino</a>
					<a href="Capilares/Ortiga/locion_tonica_anticaida_del_cabello_OC102.html" > L&iacute;nea ortiga</a>
				</div>
				<div id="cuidado_facial" onmouseover="desplegar('cuidado_facial')" onmouseout="enrollar('cuidado_facial');">
					<a href="Lifting_hidratante.html" >Lifting hidratante</a>
					<a href="Antioxidante.html" >Antioxidante</a>
					<a href="Phytoactiva.html" >Phytoactiva</a>
					<a href="Rejuvalene.html" >Rejuvalene</a>
					<a href="Nectar.html" >Nectar</a>
					<a href="Collagenesse.html" >Collagenesse</a>
					<a href="Tratamiento.html" >Tratamiento</a><br>
					<a href="Dyamante_cell.html" >Dyamante cell</a>
					<a href="Abyssine.html" >Abyssine</a>
					<a href="Hidracalme.html" >Hidracalme</a>
					<a href="Time_release.html" >Time release</a>
					<a href="H20_termal.html" >H20 termal</a>
					<a href="Acai.html" >Açai</a>
					<a href="Spa.html" >Spa</a>
				</div>
				<div id="cuidado_corporal" onmouseover="desplegar('cuidado_corporal');" onmouseout="enrollar('cuidado_corporal');" >
					<a href="Citrus.html" >Citrus</a>
					<a href="Golden_sun.html" >Golden sun</a>
					<a href="Mantecas_corporales.html" >Mantecas corporales</a>
					<a href="Seda.html" >Seda</a>
					<a href="Top_modeling.html" >Top modeling</a>
					<a href="Triple_accion.html" >Triple acci&oacute;n</a>
					<a href="Camila.html" >Camila</a>
					<a href="Propoleos_b.html" >Prop&oacute;leos b</a><br>
					<a href="Blueberry.html" >Blueberry</a>
					<a href="Eucalyptus.html" >Eucalyptus</a>
					<a href="Beauty_feet.html" >Beauty feet</a>
				</div>
				<div id="reino_beauty" onmouseover="desplegar('reino_beauty');" onmouseout="enrollar('reino_beauty');">
					<a href="Ojos.html" >Ojos</a>
					<a href="Labios.html" >Labios</a>
					<a href="Rostro.html" >Rostro</a>
					<a href="Manos.html" >Manos</a>
				</div>
				<div id="fragancias" onmouseover="desplegar('fragancias');" onmouseout="enrollar('fragancias');">
					<a href="Femeninas.html" >Femeninas</a>
					<a href="Masculinas.html" >Masculinas</a>
				</div>
				<div id="Belleza_interior" onmouseover="desplegar('Belleza_interior');" onmouseout="enrollar('Belleza_interior');" >
					<a href="Eco_reino.html" >Eco reino</a>
					<a href="Infusiones.html" >Infusiones</a>
					<a href="Propoleos_plus.html" >Prop&oacute;leos plus</a>
					<a href="Suplementos.html" >Suplementos</a>
				</div>
			</div>
			<div id="productos" >
				<div id="imagenes" >
					<a href="index.html" onclick="return direccion('index.html');"  ><img src="Capilares/Almendras/da101.jpg" alt="Ba&nacute;o de crema con jojoba y almendras."></a>
					<a href="Capilares/Almendras/acondicionador_de_almendras_DA103.html" onclick="return direccion('Capilares/Almendras/acondicionador_de_almendras_DA103.html');"><img src="Capilares/Almendras/da103.jpg" alt="Acondicionador de almendras."></a>
				</div>
				<div id="contenido" >
					<p>Capilares > ALMENDRAS</p>
					<p>BA&Ntilde;O DE CREMA CON JOJOBA Y ALMENDRAS</p>
					<p>Su f&oacute;rmula enriquecida con aceite de almendras dulces y aceite de jojoba penetra en la fibra capilar, humect&aacute;ndola. As&iacute;, nutre, repara e hidrata profundamente el cabello, especialmente en las zonas castigadas. Devuelve el nivel de hidrataci&oacute;n ideal, dejando el cabello suave, brillante y protegido. Apto para todo tipo de cabellos da&ntilde;ados por agresiones ambientales o qu&iacute;micas.</p>
					<p>COD: DA101 | 200g</p>
					<p>$ 69.9</p>
					<a href="#" id="comprar" onclick="cargar_chango('marco','Ba&ntilde;o de crema con jojoba y almendras.');" >Comprar</a>
				</div>
			</div>
		</div>
	</body>
</html>

Última edición por zerokilled; 27/02/2014 a las 08:17 Razón: bbcode para codigos

Etiquetas: funcion, html, js, objeto, variable, window
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:13.