En JavaScript, el método open del objeto window, nos permite la creación de una nueva ventana del navegador personalizada, con este método podremos hacer ventanas emergentes (popup), popunders...
La sintaxi del método open es la siguiente:
window.open(direccion [, nombre] [, atributos] [, reemplazar])
Donde podremos especificar los siguientes parámetros:
direccion - Parámetro nescesário que indica la página que será cargada en la ventana creada, el valor por defecto será about:blank
nombre - Este parámetro opcional, define el nombre que identificará la ventana, si creamos dos ventanas con el mismo nombre, la segunda se abrira en el interior de la primera
atributos - Este parametro opcional definira las propiedades de la nueva ventana a abrir, los atributos que podemos definir serán:
fullscreen - Booleano que especifica si mostrar la ventana en modo pantalla completa
height - Entero que especifica la altura de la ventana
location - Boleano que indica si mostrar o no barra de direccion
menubar - Boleano que indica si mostrar o no barra de menú
resizable - Boleano que indica si se puede cambiar el tamaño de la ventana
status - Boleano que indica si mostrar o no barra de estado
toolbar - Boleano que indica si mostrar o no barra de herramientas
width - Entero que indica el ancho de la pantalla
reemplazar - Booleano opcional que indica si al reemplazar la página por otra, esta se conservara en el historial
La función devolverá una referéncia al objeto ventana creado, o null en el caso que no se pueda crear:
<script>
if(window.open('http://www.programacionweb.net','popup','fullscreen=1') == null)alert('No se pudo abrir la ventana\nEsto puede ser devido a que tu navegador u otro\nprograma externo al mismo, bloquee las ventanas\nemergentes, por favor, revise su configuración.');
</script>
Si se crea la ventana con exito, la función open devolverá un objeto window al que podremos aplicar cualquiera de los siguientes métodos para trabajar con ventanas:
blur() - La ventana puerde el mouse y pasa a ser la ventana inactiva
close() - Cierra la ventana
focus() - La ventana captura el mouse y pasa a ser la ventana activa, nos permite deshabilitar la opción minimizar
moveBy(x,y) - Mueve la ventana x y y píxels
moveTo(x,y) - Mueve la ventana a la posición x,y de la pantalla
print() - Imprime la ventana
resizeBy(x,y) - Amplia el tamaño de la ventana x,y píxels
resizeTo(x,y) - Cambia el tamaño de la ventana a x,y píxels
Por ejemplo, haremos una ventana que se ocultará detras de la ventana actual gracias al método blur:
<script>
popunder = window.open();
popunder.blur()
</script>
O una ventana que se abrirá y se cerrará al cabo de 3 segundos usando las funciones close() y setTimeout():
<script>
popunder = window.open();
setTimeout("popunder.close()",3000);
</script>
La sintaxi del método open es la siguiente:
window.open(direccion [, nombre] [, atributos] [, reemplazar])
Donde podremos especificar los siguientes parámetros:
direccion - Parámetro nescesário que indica la página que será cargada en la ventana creada, el valor por defecto será about:blank
nombre - Este parámetro opcional, define el nombre que identificará la ventana, si creamos dos ventanas con el mismo nombre, la segunda se abrira en el interior de la primera
atributos - Este parametro opcional definira las propiedades de la nueva ventana a abrir, los atributos que podemos definir serán:
fullscreen - Booleano que especifica si mostrar la ventana en modo pantalla completa
height - Entero que especifica la altura de la ventana
location - Boleano que indica si mostrar o no barra de direccion
menubar - Boleano que indica si mostrar o no barra de menú
resizable - Boleano que indica si se puede cambiar el tamaño de la ventana
status - Boleano que indica si mostrar o no barra de estado
toolbar - Boleano que indica si mostrar o no barra de herramientas
width - Entero que indica el ancho de la pantalla
reemplazar - Booleano opcional que indica si al reemplazar la página por otra, esta se conservara en el historial
La función devolverá una referéncia al objeto ventana creado, o null en el caso que no se pueda crear:
<script>
if(window.open('http://www.programacionweb.net','popup','fullscreen=1') == null)alert('No se pudo abrir la ventana\nEsto puede ser devido a que tu navegador u otro\nprograma externo al mismo, bloquee las ventanas\nemergentes, por favor, revise su configuración.');
</script>
Si se crea la ventana con exito, la función open devolverá un objeto window al que podremos aplicar cualquiera de los siguientes métodos para trabajar con ventanas:
blur() - La ventana puerde el mouse y pasa a ser la ventana inactiva
close() - Cierra la ventana
focus() - La ventana captura el mouse y pasa a ser la ventana activa, nos permite deshabilitar la opción minimizar
moveBy(x,y) - Mueve la ventana x y y píxels
moveTo(x,y) - Mueve la ventana a la posición x,y de la pantalla
print() - Imprime la ventana
resizeBy(x,y) - Amplia el tamaño de la ventana x,y píxels
resizeTo(x,y) - Cambia el tamaño de la ventana a x,y píxels
Por ejemplo, haremos una ventana que se ocultará detras de la ventana actual gracias al método blur:
<script>
popunder = window.open();
popunder.blur()
</script>
O una ventana que se abrirá y se cerrará al cabo de 3 segundos usando las funciones close() y setTimeout():
<script>
popunder = window.open();
setTimeout("popunder.close()",3000);
</script>
