Redireccionar y recargar web con javascript

Todavía está virgen 2014 de alguna entrada sobre informática, al empezar el año de vacaciones me dediqué a temas más ociosos. Vamos pues con una minientrada sobre javascript ¿cómo redireccionar una web usando este lenguaje?

Empecemos por un punto, existen muchas formas de hacer redirecciones, tanto desde el servidor como desde el cliente. Hasta con una mera etiqueta en HTML podemos hacerlo. Vamos a ver cómo se puede hacer desde javascript dado que tiene mucha chicha. Para ello nos serviremos del objeto Location.

Para ir a una URL determinada lo más sencillo es usar la propiedad href de location. Con href podremos tanto recuperar la url en la que navegamos como cambiar el valor de la misma. Podemos usar una url absoluta para ir a otra web externa a la nuestra o una relativa para navegar dentro de nuestra web:

/*Ruta absoluta, nos llevaría a una web externa*/
location.href = "http://www.webquequeremosver.com"; 
/*En cambio esta nos llevaría a una dentro de nuestro dominio*/
location.href="admin.php";

Otra opción son los métodos replace y assign. Ambos hacen que location cargue un nuevo documento, pero con una diferencia: replace quita el sitio actual de la historia de navegación del documento, de esa forma el botón “atrás” del navegador no puede utilizarse para volver a la página anterior. En cambio assign simplemente carga el nuevo documento, por lo que sí tendrás esa función de navegar hacia atrás activa.

/*Con replace nos vamos a un nuevo document y bloqueamos el botón de atrás*/
loacation.replace("http://google.es");
/*Con assign en cambio conservamos esa funcionalidad*/
loacation.assign("http://google.es");

¿Y para recargar la página? Pues está el método reload, el cual por defecto recargará desde la caché a no ser que le pasemos el parámetro true para forzar la recarga desde el servidor. Es decir, el método por defecto funcionaría como la tecla F5 en vuestro navegador, y con el true en cambio lo haría como ctrl+F5

/*Recargamos desde caché*/
location.reload();
/*Forzamos la recarga*/
location.reload(true);
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s