Menú Curso Tecnologías en Cliente : Uso de "Cookies" y Ventanas "Pop-Up".

(Anterior) JavaScript a Detalle

A través de la siguiente definición de "cookies" se restringe que una ventana "Pop-up" aparezca sólo en caso de no existir determinado "cookie" en el Navegador, además, en caso de cumplirse dicha condición, será colocado un "cookie" que vencerá automáticamente 1 año después de su colocación inicial, en efecto re-apareciendo la ventana "Pop-up" una vez cumplida esta fecha.

Secuencia de Acontecimientos:

Página Original
  • Viene de la página javascript_fondo.htm , esta página no contiene ningún tipo de JavaScript especifico para esta ejecución, solo oprimió el siguiente link:
 
<a href="ejemplos/jscript/cookventana.htm">
Página Visitada (Actual)
  • Esta página contiene la siguiente definición en JavaScript:
 

<head> 
<script type="text/javascript" src="jscript/cookies.js"> </script> 
</head>

La librería cookies.js contiene una serie de funciones que permiten la colocación e inspección de "Cookies" para determinado sitio, así como una declaración para abrir una ventana "Pop-Up", el código fuente de esta librería se describe a continuación :

 
function ExtraerCookie(nombre) {

  // Colocar Nombre y Longitud de Cookie Buscado en Variables
  var arg = nombre + "=";  
  var longitud = arg.length;  
  var i = 0;  

  // Condicional de Comparacion sobre Cookie residente en Navegador
  if (document.cookie.substring(i, longitud) == arg) {       
	return true;
  }
  return null;
}

function ColocarCookie (name, value, expires, path) {  
var domain;
var secure;
document.cookie = name + "=" + escape (value) + 
((expires == null) ? "" : "; expires=" + expires ) + 
((path == null) ? "" : "; path=" + path) +  
((domain == null) ? "" : "; domain=" + domain) + 
((secure == null) ? "" : "; secure");
}

// Llamar Funcion para extraer Cookie
var visita=ExtraerCookie("GALLETA");

// No hay Cookie
if (visita == null) {
 var hoy = new Date();
 var expira = new Date(hoy.getTime() + 365 * 24 * 60 * 60 * 1000).toGMTString();

 ColocarCookie("GALLETA","4H45GDFGMv8S",expira,"/");

 window.open("popwin.html", "popwin",
             "width=250,height=300,left=300,top=100,scrollbars=no,menubar=no");
}

  • La primer función es utilizada para realizar una comparación sobre el "Cookie" residente en el "Browser" y el nombre proporcionado como argumento.

  • La segunda función es empleada para colocar un "Cookie" en el Navegador.

  • Seguido de esta última función se encuentra la primer declaración que realiza una búsqueda por el "Cookie" llamado GALLETA.

  • En caso de ser negativo el resultado de la búsqueda:

    • Primeramente se define una variable para contener una fecha 1 año más tarde a la fecha del sistema, la cual será empleada como día de vencimiento para el respectivo "Cookie"

    • Se invoca el método para la colocación de "Cookies" con los respectivos parámetros.

    • Se abre una ventana "Pop-up" mediante el método open del Objeto Window.

  • La ventana "Pop-up" es un simple documento HTML / XHTML , con la excepción del link ofrecido para cerrar la misma ventana que es definido de la siguiente manera:

  •  
    <a href="" onclick="javascript:window.close()">CERRAR VENTANA</a>
    

Terminos Legales de Contenido ©2000-2011 Osmosis Latina

Diseñado bajo estándares : XHTML   CSS  

webmaster@osmosislatina.com