Ho aperto una nuova finestra!

"); newwindow.document.write("

" + R1 + "

"); newwindow.document.write("

"); newwindow.document.close(); } function f1() { var VisSec=new Date(); alert("Questa istruzione si ripeterà automaticamente.") temp=setTimeout("f1()",1000); } JavaScript passo passo - Oggetto window

L'oggetto window

Argomenti trattati: gestione delle finestre, messaggi di avviso all'utente, finestre modali, timer.

L'oggetto window rappresenta la finestra in cui è visualizzato il documento HTML. Nella gerarchia del DOM, esso è perciò precedente al documento stesso, a sua volta rappresentato dall'oggetto document.

A qualsiasi oggetto nel DOM ci si riferisca, ad esempio un insieme di collegamenti, un form, una casella di testo, il punto di partenza è sempre la finestra. Dato il riferimento implicito, è possibile omettere il riferimento alla finestra.

Inoltre, le proprietà della finestra interessano la barra di stato, la barra dei menù, le dimensioni della finestra e tutto ciò che, pertanto, è contenuto nella finestra all'esterno del documento HTML.

Se ad esempio viene visualizzata una finestra di avvertimento, normalmente viene scritto nel codice qualcosa come:
alert('E IL TESTO CHE VOGLIO INSERIRE')

In realtà, alert() è un metodo dell'oggetto window, ma non c'è bisogno di richiamarlo, benché farlo non costituisca un errore. Sarebbe perciò  più lungo, ma corretto, il codice: 
window.alert('E IL TESTO CHE VOGLIO INSERIRE').

Data l'importanza rivestita dall'oggetto window, numerosi sono i metodi e le proprietà che lo caratterizzano.

Tra i principali:

Metodi
alert() vedi:
finestre di messaggio, inserimento dati e conferma
blur() Il metodo blur() fa perdere il focus alla finestra considerata. Se ad esempio viene aperta una finestra da un'altra finestra, la finestra appena aperta avrà il fuoco attivo, e la finestra che la avrà aperta passerà in secondo piano. Perciò, volendo ridare il fuoco alla finestra che ha aperto la seconda finestra, può essere utilizzato il metodo blur(). Secondo la gestione del sistema operativo e del browser in uso rispetto alle finestre, questo metodo può ridurre a icona la finestra cui il metodo è stato applicato, ma non la chiude, al contrario del metodo close().
La sintassi è dunque: window.blur()

close() Il metodo close() chiude la finestra cui è applicato. Aprendo la finestra dell'esempio precedente, è possibile vederne la sintassi rispetto all'evento "click" del pulsante "chiudi".
La sintassi generale del metodo è:
window.close();
confirm() vedi:
finestre di messaggio, inserimento dati e conferma
focus() Il metodo focus() restituisce il fuoco alla finestra considerata. Se ad esempio viene aperta una finestra da un'altra finestra, la finestra appena aperta avrà il fuoco attivo, e la finestra che la avrà aperta passerà in secondo piano. Perciò, volendo ridare il fuoco alla finestra che ha aperto la seconda finestra, come nel caso del metodo blur(), può essere utilizzato il metodo focus(). 
La sintassi è dunque: window.opener.focus().
L'opener, nell'esempio appena fatto, è una proprietà dell'oggetto window che si riferisce alla finetsra che ha aperto l'altra finestra.

moveBy() Puoi utilizzare il metodo moveBy per spostare le finestra di quanto indicato, secondo la sintassi:
window.moveBy(n1, n2), dove n1 è il valore dello spostamento verso sinistra e n2 è il valore dello spostamento verso destra.

moveTo() Puoi utilizzare il metodo moveTo per spostare le finestra di quanto indicato, secondo la sintassi:
window.moveTo(n1, n2), dove n1 è il valore dello spostamento verso sinistra e n2 è il valore dello spostamento verso destra.

open() vedi:
come aprire un'altra finestra
print() Il metodo print() permette, se una stampante è collegata al PC, di stampare direttamente la pagina correntemente visualizzata.
prompt() vedi:
finestre di messaggio, inserimento dati e conferma
resizeBy() Puoi utilizzare il metodo resizeBy per ridimensionare la finestra di quanto da te indicato, secondo la sintassi:
window.resizeBy(n1, n2).
n1 indicherà l'aumento o la diminuzione in altezza, n2 indicherà l'aumento o la diminuzione in larghezza.

Su alcune versioni di Netscape Navigator si riscontrano problemi!!!

resizeTo() Puoi utilizzare il metodo resizeTo per ridimensionare la finestra di quanto da te indicato, secondo la sintassi:
window.resizeTo(n1, n2).
n1 indicherà l'aumento o la diminuzione in altezza, n2 indicherà l'aumento o la diminuzione in larghezza. In questo esempio, rispetto al precedente, sarà visualizzata una diminuzione della dimensioen della finestra, inserendo in n1 e n2 dei valori negativi.

Su alcune versioni di Netscape Navigator si riscontrano problemi!!!

scroll() Il metodo scroll() permette di scorrere la finestra di quanto indicato nel valore passato al metodo come argomento.

Solo utenti MSIE!!!

 

scrollBy() Il metodo scrollBy() è un ulteriore metodo che permette di scorrere la finestra di quanto indicato nel valore passato al metodo come argomento.
Questo esempio farà scorrere la finestra fino alla fine del documento,al centro dello stesso rispetto alla sua larghezza:

 

scrollTo() Il metodo scrollTo() è un ulteriore metodo che permette di scorrere la finestra in altezza e larghezza rispetto a  quanto indicato nel valore passato al metodo come argomento.
Questo esempio farà scorrere la finestra al centro del documento, sino all'inizio della sezione dedicata alla descrizione dei metodi:

 

setHotKeys() Consente di attivare e disattivare i tasti di scelta rapida della finestra quando essa viene generata in modo che sia assente la barra dei menù.
Vedi anche:
come aprire un'altra finestra
setResizable() Consente di gestire la possibilità di ridimensionare la finestra da parte dell'utente. Vedi anche:
come aprire un'altra finestra
Proprietà
closed Restituisce true, se la finestra è stata chiusa; viceversa, restituisce false.
Naturalmente, in questo caso, restituirà false.

defaultStatus Descrive il messaggio predefinito sulla barra di stato, in questo caso:
window.defaultStatus="L'oggetto window in JavaScript";
Il messaggio predefinito cambierà quando il puntatore del mouse sarà sopra un collegamento ipertestuale.
document è il riferimento all'oggetto document contenuto nell'oggetto window.

Oggetto document

frames fa riferimento ai frames contenuti nella finestra. E' un Array, e come tale parte dall'indice zero.
history è il riferimento agli altri URL che l'utente ha esplorato nel corso della navigazione su Internet.
left proprietà che indica la posizione orizzontale della finestra
length si riferisce al numero di frames nella finestra, in questo caso zero, perché si riferisce all'Array frames che parte da zero.

location rappresenta l'URL della finestra corrente.
name

restituisce il nome della finestra corrente. In particolare, è relativo all'apertura delle finestre e alla visualizzazione dei documenti nelle finestre.

opener è il riferimento alla finestra che ha aperto la finestra corrente. Dagli esempi precedenti, è stato possibile visualizzare altre finestre.
Questa finestra è il loro opener.
parent fa riferimento alla finestra che contiene i frames.
self E' un ulteriore riferimento alla finestra corrente. Potremmo ad esempio scrivere:
self.lenght invece di window.lenght
status fa riferimento al messaggio sulla barra di stato quando il puntatore del mouse poggia su un collegamento. In tal caso, dovrebbe dare l'URL della pagina, ma possono essere aggiunti dei messaggi personalizzati utilizzando il seguente codice:

onMouseOver="window.status='Testo che si vuole inserire';return true"

Potete visualizzare nei collegamenti alla fine del documento l'effetto generato dall'applicazione di questa proprietà. Non con tutti i browsers, e non con tutte le versioni del browser, funziona.

top proprietà che indica la posizione verticale delle finestra, a partire dall'alto.
window è il riferimento alla finestra corrente.

Finestre di messaggio, di inserimento dati e di conferma:

 Sono fondamentalmente 3 le finestre di messaggio che si visualizzano tramite JavaScript: le finestre di messaggio ( tramite il metodo alert() ), le finestre di conferma ( tramite il metodo confirm() ), e le finestre che permettono l'immissione di valori ( tramite il metodo prompt() ).
Questi metodi si prestano ad essere utilizzati in numerosissimi script dagli scopi differenti.

La sintassi del metodo alert() è la seguente:
alert(argomento);
L'argomento può essere una variabile o una stringa.

La sintassi del metodo confirm() è la seguente:
var conferma=confirm(argomento);
L'argomento può essere una variabile o una stringa. Generalmente, la variabile a cui viene assegnata è utilizzata per restituire un valore booleano.

La sintassi del metodo prompt() ha 2 argomenti:
prompt('testo di intestazione','testo nella casella di testo')

Generalmente, il valore restituito dal metodo prompt() viene assegnato ad una variabile nel seguente modo:
var MiaVar=prompt("inserisci un valore","")

vai alla spiegazione dettagliata delle finestre di dialogo


 Altrettanto importanti sono i metodi setInterval() e setTimeout(), e il loro relativo annullamento, ovvero clearInterval() e clearTimeout().

Sebbene siano legati all'oggetto window, poiché spesso sono utilizzati per gli effetti speciali legati alla grafica delle pagine web, potrà esserne compreso l'uso negli esempi relativi all'oggetto image.

Questi metodi permettono di ripetere una serie di funzioni dopo un certo intervallo di tempo.

La sintassi è può essere così generalizzata:

Mia_Var=setTimeout("miaFunzione()", 1000);

Ciò permette di ripetere le istruzioni contenute in miaFunzione() ogni secondo, poiché 1000 indica il numero di millesimi di secondo che devono passare perché venga ripetuta la funzione.
Per annullare il metodo, occorre utilizzare il metodo clearTimeout(), in questo caso

clearTimeout(Mia_Var);

Prova un'applicazione del metodo!!!

Eventi principali supportati da MSIE:


Torna all'inizio | Home