JavaScript
DOM – Document Object Model
DOM - Document Object Model
API implementata dai browser


Indipendente dal linguaggio e dalla piattaforma
Forma di rappresentazione dei documenti strutturati
Definisce il modo di accedere alla struttura del documento
Permette di visualizzare un documento sotto forma di
albero




Gli elementi del documento sono i nodi dell’albero
Standard ufficiale del W3C http://www.w3.org/DOM/

2
Alice Pavarani
DOM di un documento HTML

Il browser interpretando un documento HTML ne genera
il DOM

Esempio:
DOCUMENT
HTML
HEAD
TITLE
Esempio DOM
3
BODY
META
H1
H2
P
A
Titolo
Sottotitolo
Testo del
paragrafo
Link
Alice Pavarani
DOM e JavaScript: gli oggetti ospite

Il DOM non è una parte di JavaScript

Il DOM è una collezione di oggetti per Javascript
navigator
window
frame
layer
link
text
textarea
area
document
form
anchor
password
fileUpload
location
applet
submit
hidden
plugin
history
plugin
image
reset
radio
button
checkbox
select
option
4
Alice Pavarani
mimeType
Proprietà e metodi comuni
Proprietà
id
Identificativo (dovrebbe essere univoco)
attributes
Restituisce un vettore di attributi che caratterizzano l’elemento
childNodes
Restituisce un vettore contenente gli elementi (nodi) figli dell’elemento
className
Identifica la classe di appartenenza dell’elemento (lettura/scrittura)
nodeName, nodeType, nodeValue
Nome, tipo e valore del nodo corrente
parentNode
Restituisce il nodo padre del nodo corrente
style
Restituisce lo stile che si applica all’elemento
Metodi
addEventListener
Aggiunge un gestore per un determinato evento all’elemento a cui si applica
removeEventListener
appendChild
Elimina un gestore di evento esistente
Aggiunge un elemento in coda alla lista degli elementi contenuti nel nodo corrente
cloneNode
Restituisce una copia dell’elemento a cui si applica
getAttribute
Restituisce il valore dell’attributo specificato come argomento
5
Alice Pavarani
Window
proprietà
http://www.w3schools.com/jsref/obj_window.asp
Il padre di tutti gli oggetti
Rappresenta la finestra corrente del browser


Proprietà
name
statusbar
locationbar
scrollbars
toolbar
Nome della finestra corrente
valori booleani che se
impostati a false la proprietà
visible nasconde la barra
relativa (di default è true)
screenLeft, screenTop
Internet Explorer, …
screenX, screenY
Chrome, Firefox, …
status
6
Barra di stato
Barra degli indirizzi
Barre di scorrimento (verticali/orizzontali)
Barra degli strumenti
Distanza, in pixel, dal bordo sinistro e da quello in alto
della finestra del browser rispetto al desktop
Messaggio da visualizzare sulla barra di stato
Alice Pavarani
Window
metodi
http://www.w3schools.com/jsref/obj_window.asp
Il padre di tutti gli oggetti
Rappresenta la finestra corrente del browser


Metodi
alert()
Visualizza un alert con un messaggio ed il bottone ok
blur()
Rimuove il focus dalla finestra corrente
close()
Chiude la finestra corrente
confirm()
Visualizza un box di dialogo con un messaggio ed i bottoni ok e annulla
focus()
Assegna il focus alla finestra corrente
open()
Apre una nuova finestra del browser
print()
Stampa il contenuto della finestra corrente
prompt()
Visualizza un box di dialogo con un messaggio e un campo di inserimento per l’utente
resizeTo()
Ridimensiona la finestra alle dimensioni specificate (larghezza e altezza)
stop()
Interrompe il caricamento della finestra
7
Alice Pavarani
Document
http://www.w3schools.com/jsref/dom_obj_document.asp
Rappresenta il documento HTML

Proprietà
inputEncoding Restituisce la codifica dei caratteri utilizzata nel documento (sola lettura)
lastModified
Restituisce la data e l’ora di ultima modifica del documento (sola lettura)
readyState
Restituisce lo stato del caricamento della pagina (sola lettura)
title
Titolo della pagina (tag <title>)
URL
Restituisce l’indirizzo completo della pagina (sola lettura)
Metodi
createElement()
Crea un nuovo elemento nel documento - esempio
createTextNode()
Crea un elemento di tipo testuale nel documento - esempio
getElementById()
Restituisce l’elemento il cui attributo ID ha il valore specificato
getElementByName()
Permette di accedere a tutti gli elementi aventi il nome specificato
getElementByTagName()
Restituisce la lista di nodi contenente tutti gli elementi di un certo tag
write(), writeln()
Permettono di scrivere espressioni HTML sul documento
8
Alice Pavarani
Location
http://www.w3schools.com/jsref/obj_location.asp
Contiene le informazioni riguardo l’indirizzo URL corrente

Proprietà
Metodi
host
pathname
assign()
href
port
reload()
origin
protocol
replace()
History
http://www.w3schools.com/jsref/obj_history.asp
Contiene gli indirizzi URL visitati all’interno della finestra
corrente
Metodi

Proprietà
lenght
back()
forward()
go()
9
Alice Pavarani
Navigator
http://www.w3schools.com/jsref/obj_navigator.asp


Rappresenta il browser che visualizza la pagina Web
Fornisce informazioni sul browser
<script>
// oggetto Navigator - Informazioni sul Browser
txt
txt
txt
txt
txt
txt
txt
txt
txt
= "<p>Browser CodeName: " + navigator.appCodeName + "</p>";
+= "<p>Browser Name: " + navigator.appName + "</p>";
+= "<p>Browser Version: " + navigator.appVersion + "</p>";
+= "<p>Cookies Enabled: " + navigator.cookieEnabled + "</p>";
+= "<p>Browser Language: " + navigator.language + "</p>";
+= "<p>Browser Online: " + navigator.onLine + "</p>";
+= "<p>Platform: " + navigator.platform + "</p>";
+= "<p>User-agent header: " + navigator.userAgent + "</p>";
+= "<p>User-agent language: " + navigator.systemLanguage + "</p>";
document.writeln(txt);
</script>
Esempio tratto da http://www.w3schools.com/js/js_window_navigator.asp
10
Alice Pavarani
Scarica

ppsx