martes, julio 22, 2008
Como lograr que paginas no abran en otras pestañas!!??
Como lograr que paginas no abran en otras pestañas!!??

Bueno, a motivo de resolucion de la anterior pregunta, les presento una pequeña prueba de concepto
que intenta solucionar este tema.

Muchas veces, no nos interesa, o nos juega en contra que el usuario navegue por nuestra pagina
en muchas solapas a la vez. Esto suele ocurrir en paginas donde la seguridad, o la concurrencia juegan un papel
critico, o solo por histeria del diseñador/programador. Se me ocurrio lo siguente...

Archivo: no-pestaña.html

---BEGIN---
<html>

<head>

<a href="javascript:ejecutar(this);">Prueba</a>

<html>

<head>







<script>

function ejecutar()

{

window.location="http://www.google.com.ar";

}

</script>

</html>
--- END ---

La palabra "javascript:" es escencial para que esto funcione.
Lo que hace esto es, abrir la URL a travez de un script definido en nuestra pagina, y el truco
está en que cuando abra la nueva pestaña o ventana, no va a encontrar la URL y pasa nada!

Ahora suponiendo un escenario más complicado, en el que tenemos parametros en un formulario a enviar con POST,
podriamos hacer.


Archivo: no-pestaña.html


---BEGIN---
<html>

<head>

<a href="javascript:ejecutar(this);">Prueba</a>

<form name="valores" action="http://www.google.com/search" >

<input value="" title="Valor" name="q" maxlength="2048"/>

</form>

<html>

<head>



<script>

function ejecutar()

{

document.valores.submit();

}

</script>



</html>
--- END ---


De la misma manera, nos aprovechamos del truquito del script definido en la pantalla que estamos usando, y solo se ejecutará
en la ventana principal, y no en ventanas nuevas, ni pestañas...

Obviamente, esto no es una medida de seguridad bajo ningun tipo d econcepto, es solo una limitante mas para usuarios desprevenidos
o solo proligidad. Espero les sirva.


Séxitos!

Etiquetas: ,

 
posted by [DevNull] at 12:03 p. m. | Permalink |


0 Comments: