e-gradiva     HTML CSS JavaScript Načrtovanje    
  logotip  
SERŠ Maribor Iskanje Primeri

Predmet document

V prvih različicah je bil dokument HTML statičen. Ko se je vsebina naložila v brskalnikovo okno, se ni mogla spreminjati. V času razvoja je bilo v dokumentu mogoče spreminjati vedno več. Najprej so bili tu obrazci, statusna vrstica; danes pa lahko spremenimo pravzaprav že skoraj celotno vsebino. Temu konceptu pravimo dinamični HTML (DHTML). V razvoju DHTML pa so brskalniki hodili svojo pot. Vsak je na drugačen način dovoljeval spreminjati vsebino.

Predmet document vsebuje čisto vse, kar je prikazano znotraj brskalnikovega okna (vključno z orodno in naslovno vrstico in podobnim). Dokument je kombinacija vsebine in vmesnika. Predmet document je v današnjih hierarhičnih brskalnikih korensko vozlišče. Ker predmet document nima eksplicitno določene predstavitve v dokumentu HTML, se običajno predstavlja z značko <body>.

Dokument HTML se lahko naredi tako, da se napiše kodo HTML. Lahko pa se ga ustvari tudi s postopkom document.write().

Lastnosti

Lastnost title
Vrne ali spremeni naslov dokumenta. Title je element v dokumentu HTML <title>...</title> in se nahaja v glavi (head). Predstavlja niz, ki se nahaja v naslovni vrstici.
→ primer
Lastnost referrer
V spletu povezave vodijo od ene strani do druge. Ta lastnost predstavlja naslov (URL) spletne strani, ki nas je pripeljala do te strani. Na tisti strani je torej povezava do te strani. Mnogi strežniki beležijo kako je bila stran dostopana. Vrnjena vrednost je niz string. V kolikor je bila stran dostopana na drugačen način (npr. z vpisom naslova v polje brskalnika Naslov/Location, preko Priljubljene/Bookmarks ali Zgodovine/History), je niz prazen.
Lastnost URL
JavaScript včasih uporablja različne izraze za iste stvari, kar nekatere zmede. Vrednost predstavlja naslov (URL) trenutne strani. Ta lastnost je enaka lastnosti window.location.href in ne window.location. Razlika med document.URL in window.location je v tipu podatkov. window.location je predmet, ki vsebuje mnogo podatkov o brskalniku, document.URL pa je samo niz, ki se ga lahko samo prebere.
→ primer
Lastnost domain
Ime strežnika, na katerem se je stran nahajala. Lahko se zgodi, da nekateri strežniki ne dovoljujejo izpis domene. Ime domene ni nujno zapis URL, le ta je lahko namreč alias (vzdevek). Npr.: domena je httpd.s-sers.mb.edus.si, njen vzdevek pa je www.sersmb.net. Iz varnostnih razlogov administratorji prevarajo uporabnike. JavaScript bere ime domene po pravilu dveh pik.
Lastnost cookie
Mehanizem piškotkov omogoča shranjevanje majhne količine informacij na računalniku uporabnika na razumno varen način. Lastnost je niz, ki opisuje vse vidne piškotke v dokumentu, ki jim še ni potekla veljavnost. Vrnjena vrednost tega postopka vsebuje samo imena in vrednosti lastnosti v enem nizu.
Vrednosti piškotkov je mogoče nastaviti katerikoli trenutek z naslednjo sintakso:
"name" = "imePiskota";
expires = "datum";
path = "pot(mapa)";
domain = "imeDomene";
secure
Vrednost datuma mora biti v obliki, ki jo vrne postopek predmeta Date toUTCString(). Čas prenehanja veljavnosti je opcijski, če ni nastavljen, piškotek izdihne, ko uporabnik zapre brskalnik. Ime domene je potrebno za prenos podatkov na strežnik, prav tako tudi pot na njem. Vrednost secure je logična (true ali false). V primeru vrednosti true, uporablja brskalnik za komunikacijo s strežnikom SSL.
→ podrobnosti
Lastnost body
Predmet, ki opisuje vsebino dokumenta
Lastnost images[imageID]
Zbirka vseh slik
→ podrobnosti
Lastnost links[linkID]
Zbirka vseh aktivnih povezav
→ podrobnosti
Lastnost forms[formID]
Zbirka vseh obrazcev
Lastnost anchors[anchorID]
Zbirka vseh poimenovanih povezav. Anchor je predmet v dokumentu, ki je cilj hiperpovezav <a id="...">. Naredimo ga lahko na dva načina: s klicanjem postopka String.anchor ali z uporabo značke a v dokumentu HTML. Za oba načina je značilno da imata lastnost id. Predmeti so tudi elementi zbirke links.
Lastnost lastModified
V kolikor strežnik dovoljuje branje ustreznega parametra datoteke, se lahko posreduje to informacijo uporabnikom spletnih strani. Vrednost ni datumskega tipa, temveč niz, ki je zapisan v določenem datotečnem sistemu. V kolikor oblika odgovarja tisti v JavaScript, je mogoče niz spremeniti v datumski predmet.

Postopki

Postopek open(["mimeType"])
Odpiranje okna se razlikuje od odpiranja dokumenta. V primeru odpiranja okna, se ustvari nov predmet na ekranu. Na drugi strani pa odpiranje novega dokumenta, da bo sledil spremem podatkov. Ta postopek je uvertura postopkom za pisanje document.write() ali document.writeln(). V primeru, da se uporabi postopek document.write(), ne da bi se prej uporabil document.open(), se bo postopek document.open() zagnal samodejno. Toda tudi v tem primeru se ne sme pozabiti za zaključevanje vpisovanja s document.close()
Parameter pri odpiranju dokumenta mimeType je opcijski in določa tip dokumenta. Če parametra ni, je privzeta vrednost "text/html".
→ 
Postopek close()
S postopkom document.open() ali drugimi, ki nevidno naredijo isto, se omogoči vpisovanje v dokument. Pomemben korak je zapiranje dokumenta. S postopkom document.close() je omogočeno vpisovanje nove vsebine dokumenta. Za zadnjim document.write() je torej potrebno napisati document.close().
→ primer
Postopek write(vrednost)
V dokument se vpiše dana vrednost. V splošnem ni potrebno predhodno uporabiti postopka document.open. Z uporabo postopka document.write se samodejno odpre dokument in se zbriše njegova vsebina. Ko je pisanje končano, je potrebno dokument zapreti s postopkom document.close, saj v nekaterih brskalnikih pisanje ne bo pravilno prikazano.
Začetnikom ta postopek povzroča zmedo, saj mislijo, da jim omogoča menjanje vsebine trenutnega okna. V kolikor se piše v trenutni dokument, se izbriše celotna vsebina dokumenta.
→ primer
→ primer
Postopek writeln(vrednost)
Ta postopek se od postopka write razlikuje v tem, da doda še znak za novo vrstico v dokumentu (CR - carriage return). To seveda ne pomeni, da bo v brskalniku viden prehod v novo vrstico, za to je potreben element <br />.
Postopek getElementsByTagName(ime)

Ta postopek vrne zbirko vseh elementov HTML določene vrste. V kolikor takšnih elementov ni, vrne prazno zbirko. Za razliko od klasičnega JavaScript, ki pozna samo zbirke nekaterih elementov HTML (pozna samo zbirke links, images, forms...), postopki W3C DOM omogočajo dostop do kateregakoli elementa HTML. Tako do skupine slik pridemo na staromoden način:

slike = document.images

Do elementov se lahko dostopa tudi na taačin:

slike = document.getElementsByTagName("img")

V staromodnem načinu ne bi mogli oblikovati drugega odstavka v dokumentu:

document.getElementsByTagName("p")[1].style.color="red"
Postopek getElementsByName(ime)

Ta postopek vrne zbirko vseh elementov HTML z danim atributom name. V kolikor takšnih elementov ni, vrne prazno zbirko. Name se uporablja za skupine elementov (uporabljamo ga lahko samo v obrazcih in pri elementu object). Pri uporabi vrednosti atributa je potrebno paziti, da ga uporabljamo samo za elemente, ki imajo neke skupne značilnosti. Tako do skupine gumbov ni potrebno priti na staromoden način z navedbo celotne poti:

radijskiGumbi = document.forms[0].imeSkupineRadijskihGumbov

Do elementov se lahko dostopa neposredno:

radijskiGumbi = document.getElementsByName(imeSkupineRadijskihGumbov)

Do posameznega elementa se lahko pride z uporabo indeksa:

document.getElementsByName(ime)[i]
Postopek getElementById(ime)
Ta postopek je sintaksa W3C DOM in vrne katerikoli element v dokumentu z atributom id. Po pravilih je id unikatna oznaka v dokumentu. V kolikor pa je bil id večkrat uporabljen v dokumentu, vrne prvi elment, ki ima to oznako v izvorni kodi HTML. Postopek je lahko uporabljen v brskalnikih IE5+ in NN6+.
Postopek handleEvent(dogodek)
Postopek kliče krmilnik za določen dogodek.

SERŠ Maribor : Strokovna gimnazija : 2004 : Danijel Mom