10.3 - Janelas secundárias

Abrir um documento numa janela diferente da atual pode ser útil em diversas situações.



 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

Neste exemplo abrimos uma janela pop-up que deve conter uma imagem. Para que o tamanho da janela seja exatamente igual a largura e altura da própria imagem carregada, usamos o método resizeTo, passando como parâmetros a largura e altura obyidos através das propriedades width e height do objeto image.