10.3 - Janelas secundárias |
|
Abrir um documento numa janela diferente da atual pode ser útil em diversas situações.
- Para abrir documentos externos ao site, sem com isso sobrescrever sua página com um documento alheio;
- Para chamar a atenção do usuário com algum aviso ou propaganda;
- Mostrar instruções de preenchimento de um formulário, sem contudo apagar o próprio formulário
Propriedades: |
opener
|
- |
janela que provocou a abertura da janela atual
|
|
|
Métodos: |
open (p1,p2,p3)
|
- |
abre uma janela carregando o documento p1, com nome p2 e de acordo com as propriedades indicadas em p3.
|
close ()
|
- |
fecha uma janela
|
|
|
Abrindo uma janela sem configuração
A forma de abrir uma nova janela em Javascript é através do método open do objeto window. Este método recebe três parâmetros: o nome do arquivo do documento a ser carregado na nova janela (uma string vazia permite a criação de uma página em branco); um nome para ser atribuído à propriedade name (não pode conter espaços) e; um terceiro parâmetro opcional, com uma string de configuração da janela.
var jan = window.open("outraPag.html", "janelaNova");
Abrindo uma janela com características específicas
E se quiséssemos definir algumas características da janela aberta? O terceiro parâmetro do método open serve para isso. Esta string pode informar as dimensões da janela, se ela deve possuir barras de rolagem ou menus, ou ser redimensionável ou não. Ela deve ser composta de um conjunto de definições separadas por vírgulas e sem espaços. A tabela a seguir mostra as principais definições existentes:
Definições: |
Height
|
- |
Altura da janela
|
Width
|
- |
Largura da janela
|
Titlebar
|
- |
Se a janela terá ou não área de título (yes ou no)
|
Status
|
- |
Se a janela terá ou não barra de status (yes ou no)
|
Scrollbars
|
- |
Se a janela terá ou não barras de rolagem (yes ou no)
|
Resizable
|
- |
Se a janela será redimensionável ou não (yes ou no)
|
Menubar
|
- |
Se a janela terá ou não área de menu (yes ou no)
|
Location
|
- |
Se a janela terá ou não a barra de endereços (yes ou no)
|
|
|
var jan = window.open("outraPag.html", " janelaNova",
"toolbar=no,location=no,directories=no,status=no,
menubar=no,scrollbars=yes,resizable=no,width=400,
height=350");// sem espaços entre as vírgulas !
Referenciando outras janelas
Nos exemplos anteriores, a referência atribuída à variável jan retornada pelo método open(), pode ser utilizada para controlar a janela criada. Por exemplo:
// Fechando janelas
window.close(); // Fecha a própria janela
jan.close( ); // Fecha uma janela filha
if (jan.closed) // Informa se a janela está fechada
// Escrevendo na janela
jan.document.write("<h2>Janela secundária</h2>");
jan.focus(); // Traz a janela para o primeiro plano
\n'+
'\n'+
'\n'+
'Abrindo uma janela
\n'+
'\n'+
'\n'+
'