Objektni model dokumenta

HTML
    • HTML
    • Dinamični HTML
    • HTML5 (Audio
    • Platno
    • Video)
    • XHTML (Osnovni
    • Mobilni profil
    • C-HTML)
  • Elementi HTML-a (span (span) i div (div))
    • HTML atribut
    • HTML okvir
    • HTML editor
  • Koordiniranje karaktera (Junikod)
  • Kod jezika
  • Objektni model dokumenta
  • Objektni model pretraživača
  • Stilska tablica (Padajuće stilske tablice)
    • Familija fonta
    • Veb boja
  • HTML skriptovanje
  • W3C (Validator)
  • Pokretač Veb pretraživača
Poređenja
  • Jezici označavanja dokumenta
  • Veb pretraživači
Raspored pokretačke snage
    • HTML
    • Nestandardni HTML
    • HTML5 (platno
    • medija)
  • XHTML (1.1)
  • п
  • р
  • у
Objektni model dokumenta

Objektni model dokumenta (skraćeno DOM od engl. Document object model) je višeplatformski i jezik sa nezavisnom konvencijom za zastupanje i interakciju sa objektima u HTML, XHTML i XML dokumentima u objektima. DOM stabla mogu biti adresirana i manipulisana upotrebom metoda nad objektima. Javni interfejs DOM-a je naveden u interfejsu za programiranje aplikacija (API). Istorija objektnog modela dokumenta se prepliće sa istorijom "ratova Veb pretrazivača" od kraja 1990-ih između Netscape Navigator-a i Microsoft Internet Explorer-a, kao i sa JavaScript i JScript, kao prvim skript jezicima za široku primenu u 'prikazivačkim mašinama' Veb pregledača.

Istorija

Zastareli DOM

JavaScript je izdat od strane Netskejp-a (Netscape Comunications), 1996 uz Netskejp Navigator 2.0 (Netscape Navigator 2.0). Netskejpov konkurent, Majktosoft (Microsoft) objavio je Internet Explorer 3.0 kasnije iste godine sa priključkom JavaScript-a zvanim JScript. JavaScript i JScript su omogućili da Veb programeri kreiraju Veb c sa interakcijom na strani klijenta. Ograničen kapacitet za otkrivanje korisnički generisanih događaja i dopuna HTML dokumenata u prvoj generaciji ovih jezika na kraju postaje poznat kao "DOM Nivoa 0" ili "Zastareli DOM". Nezavisni standardi su razvijeni za DOM nivoa 0, ali je delom opisan u specifikaciji HTML-a 4.

Zastareli DOM je ograničen na određene vrste elemenata koje bi bile dostupne. Forma, linkovi i slike mogu biti označeni hijerarhijskim imenom koje počinje sa predmetom korena dokumenta. Hijerarhijsko ime može da koristi imena ili sekvencijalni indeks prethodnih elemenata. Na primer,ulaznom elementu forme može da se pristupi sa "document.formName.inputName" ili "document.forms[0]elements[0].".

Zastareli DOM je omogućio klijentskoj strani validaciju forme i popularan "prenesi" efekat.

Srednji DOM

Godine 1997, Netskejp (Netscape) i Majkrosoft (Microsoft) su objavili verziju 4.0 Netscape Navigator-a i Internet Explorer-a, dodajući podršku za dinamički HTML (DHTML), koji omogućava izmene učitanom HTML dokumentu. DHTML sadrži potrebna proširenja za rudimentarne objekte dokumenta koji je dostupan u implementacijama zastarelog DOM-a. Iako su implementacije zastarelog DOM-a uglavnom kompatibilne, jer je JScript zasnovan na JavaScript-u, DHTML DOM ekstenzije su razvijane paralelno sa razvojem svih pregledača i ostale nespojive. Ove verzije DOM-a postaju poznate kao "Srednji DOM."

Standardizacija

WWW Konzorcijum (World Wide Web Consortium, W3C), osnovan 1994. radi promovisanja otvorenih standarda za svetsku mrežu (World Wide Web, WWW), okupio je Netscape Coummunications i Microsoft zajedno sa ostalim kompanijama radi razvijanja standarda za skriptne jezike pregledača, nazvanih "ECMAScript". Prva verzija standarda je objavljena 1992. Naknadna izdanja JavaScript i JScript će implemetirati ECMAScript standard radi veće kompatibilnosti između pregledača.

Posle objavljivanja ECMAScript-a, W3C je počeo da radi na standardizaciji D0OM-a. Inicijalni DOM standard, poznat kao "DOM nivoa 1" je preporučivan od strane W3C krajem 1998. Otprilike u isto vreme, Internet Explorer 5.0 je stigao sa ograničenom podrškom za DOM Nivoa 1. DOM nivoa 1 je omogućavao kompletan model za ceo HTML ili XML dokument, uključujući i sredstva za menjanje bilo kog dela dokumenta. Neusaglaseni pregledači kao što su Internet Explorer 4.x i Netscape 4.x su se i dalje koristili u velikom broju sve do 2000. godine.

DOM nivoa 2 je objavljen krajem 2000. Predstavio je funkciju "getElementById" kao i model događaja i podršku za XML rezervisan (imenski) prostor i CSS.

DOM nivoa 3, trenutno izdanje DOM specifikacije, objavljen u Aprilu 2004 je dodao podršku za XPath i obradu događaja tastature.

DOM nivoa 4 se trenutno razvija. Razvojna verzija 6 je realizovaa u Decembru 2012.

Aplikacije

Internet pregledači

Da bi preveli dokument kao što je HTML stranica većina internet pregledača koristi interni model sličan DOM-u. Čvorovi svakog dokumenta su organizovani u strukturu stabla, koje se naziva DOM stablo, gde se najviši čvor stabla naziva "Objekat dokumenta". Kada se HTML stranica prevodi u internet pregeldaču, pregledač skida stranicu u lokalnu memoriju i atuomatski je parsira da bi je prikazao na ekranu. DOM je takođe način na koji JavaScript prenosi stanje pregeldača u HTML stranicama.

Impelementacija

Zbog činjenice da DOM podržava navigaciju u bilo kom smeru(npr. roditelj i prethodni rođak) i dozvoljava arbitrarne izmene, implementacija mora makar da baferuje dokument koji je pročitan do sada (ili neku parsiranu formu njega).

Prikazivačke mašine

Internet pregledači se oslanjaju na prikazivačke mašine da bi parsirali HTML u DOM. Neke mašine kao sto su Trident/MSHTML i Presto su povezane primarno ili ekskluzivno sa određenim internet pregledačima kao što su Internet Explorer i Opera. Drugi, kao sto su WebKit i Gecko, su korišćeni od strane mnogih internet pregledača kao što su Google Chrome, Firefox i Safari. Različite mašine implementiraju DOM standarde u različitim stepenima sagalasnoti.

Reference

Literatura

  • Flanagan, David (2006). JavaScript: The Definitive Guide. O'Reilly & Associates. стр. 312–313. ISBN 978-0-596-10199-2. 
  • Koch, Peter-Paul (14. 5. 2001). „The Document Object Model: an Introduction”. Digital Web Magazine. Приступљено 10. 1. 2009. 
  • Le Hégaret, Philippe (2002). „The W3C Document Object Model (DOM)”. World Wide Web Consortium. Приступљено 10. 1. 2009. 
  • Guisset, Fabian. „What does each DOM Level bring?”. Mozilla Developer Center. Mozilla Project. Приступљено 10. 1. 2009. 

Spoljašnje veze

Objektni model dokumenta на Викимедијиној остави.
  • DOM Living Standard by the WHATWG
  • Original W3C DOM hub by the W3C DOM Working Group (outdated)
  • Web Platform Working Group (current steward of W3C DOM)
  • п
  • р
  • у
Анализа кода
Транскомпајлери
Концепти
Дебагери
  • Firebug
  • Комодо
  • Microsoft Script Debugger
  • Microsoft Script Editor
  • Opera Dragonfly
  • Venkman
  • Веб Инспектор
Генератори документације
Уређивачи
Енџини
Фрејмворци
Повезане технологије
  • CSS
  • Објектни модел документа (ДОМ)
  • HTML
  • JSON
  • Веб Асемблер
Системи за управљање пакетима
  • npm
  • NuGet
ЈаваСкрипт на серверској страни
Unit тестирање
Истакнути појединци
  • п
  • р
  • у
Функционалности
  • Филтрирање реклама
  • Augmented browsing
  • Обележивачи
    • Bookmarklet
    • Паметни обележивачи
  • Додаци за веб-прегледач
  • Сигурност веб-прегледача
  • Синхронизовање веб-прегледача
  • Колачићи
  • Менаџер за преузимање фајлова
  • Фавикон
  • Инкрементална претрага
  • Плагин
  • Приватни мод
  • Табови
Веб-стандарди
Повезане теме
  • BrowserChoice.eu
  • CRL
  • HTTP
  • HTTPS
  • iLoo
  • Man-in-the-browser
  • Мобилни веб
  • Офлајн читач
  • Pwn2Own
  • Обогаћене интернет апликације
  • Веб-прегледач за специфичне сајтове
  • SPDY
  • SSL/TLS
  • Веб-сокет
  • Виџет
  • Веб
  • WPAD
  • XML
Засновани на Блинку
  • Chromium
    • Brave
    • Гугл кроум
    • Dragon
    • Опера
    • QupZilla
    • Sleipnir
    • Slimjet
    • SRWare Iron
    • UC Browser
    • Vivaldi
    • Yandex Browser
    • Спутњик
    • SafeZone
Базирани на Гекоу
  • AT&T Pogo
  • Avant
  • Camino
  • Мозила фајерфокс
    • Conkeror
    • GNU IceCat
    • Comodo IceDragon
    • Swiftfox
    • Swiftweasel
    • TenFourFox
    • Timberwolf
    • Тор
    • Waterfox
    • xB Browser
  • Galeon
  • Ghostzilla
  • K-Meleon
  • Kazehakase
  • Kirix Strata
  • IBM Lotus Symphony
  • Lunascape
  • Mozilla Application Suite
Базирани на Триденту
  • AOL Explorer
  • Avant
  • Deepnet Explorer
  • GreenBrowser
  • Интернет експлорер
  • Lunascape
  • Maxthon
  • MediaBrowser
  • MenuBox
  • NeoPlanet
  • NetCaptor
  • SlimBrowser
  • SpaceTime
  • UltraBrowser
  • WebbIE
  • ZAC Browser
Базирани на Веб-киту
  • Arora
  • Avant
  • Dooble
  • Epic
  • Flock
  • Fluid
  • iCab
  • Konqueror
  • Lunascape
  • Maxthon
  • Midori
  • OmniWeb
  • Origyn Web Browser
  • Otter Browser
  • QtWeb
  • rekonq
  • Сафари
  • Shiira
  • SlimBoat
  • surf
  • Torch
  • Uzbl
  • Epiphany
  • WebPositive
  • xombrero
Базирани на тексту
Остали
  • abaco
  • Amaya
  • Arachne
  • Arena
  • Charon
  • Dillo
  • eww
  • Gazelle
  • HotJava
  • IBM Home Page Reader
  • IBrowse
  • KidZui
  • Microsoft Edge
  • Mosaic
  • Mothra
  • NetPositive
  • NetSurf
  • Pale Moon
  • 360 Secure Browser
Засновани на Блинку
  • Андроид веб-прегледач
  • Chromium
    • Brave
    • Гугл кроум за Андроид
    • Опера Мобилни
    • Амазон Силк
Базирани на Гекоу
  • Фајерфокс за Андроид
  • MicroB
  • Minimo
Засновани на Престоу
  • Опера Мини
Базирани на Триденту
  • Maxthon
Базирани на Веб-киту
  • Болт
  • Делфин
  • Гугл кроум за iOS
  • Фајерфокс за iOS
  • Maxthon
  • Mercury
  • Нокија веб-прегледач за Симбијан
  • Rockmelt
  • Сафари
  • Steel
Остали
  • Blazer
  • CM Browser
  • Deepfish
  • ibisBrowser
  • Мобилни Интернет експлорер
  • Iris Browser
  • Konqueror Embedded
  • Microsoft Edge
  • NetFront
  • Nokia Xpress
  • Skweezer
  • Skyfire
  • Teashark
  • ThunderHawk
  • UC Browser
  • Vision Mobile Browser
  • WinWAP
Базирани на Гекоу
  • Kylo
Засновани на Престоу
  • Internet Channel
Базирани на Веб-киту
  • Гугл ТВ
  • Nintendo 3DS веб-прегледач
  • Nintendo DS & DSi веб-прегледач
  • NetFront
  • Steam Overlay
  • Wii U
Остали
  • MSN TV
  • Софтвер који се више не развија је написан у курзиву
  • Категорија Категорија
    • Страница Оставе Остава
  • п
  • р
  • у
Производи и
стандарди
Препоруке
  • ActivityPub
  • ARIA
  • Canonical XML
  • CDF
  • CSS
  • DOM
  • Geolocation API
  • HTML (HTML5)
  • ITS
  • JSON-LD
  • Linked Data Notifications
  • MathML
  • Micropub
  • OWL
  • P3P
  • PLS
  • RDF
  • RDF Schema
  • SISR
  • SKOS
  • SMIL
  • SOAP
  • SRGS
  • SRI
  • SSML
  • SVG
  • SCXML
  • SPARQL
  • Timed text
  • VoiceXML
  • Web storage
  • WSDL
  • Webmention
  • WebSub
  • XForms
  • XHTML
  • XHTML+RDFa
  • XInclude
  • XLink
  • XML
  • XML Base
  • XML Encryption
  • XML Events
  • XML Information Set
  • XML namespace
  • XML Schema
  • XML Signature
  • XOP
  • XPath
  • XPath 2.0
  • XPointer
  • XProc
  • XQuery
  • XSL
  • XSL-FO
  • XSLT (elements)
Напомене
  • IndieAuth
  • JF2
  • Post Type Discovery
  • XAdES
  • XHTML+SMIL
  • XUP
Радни нацрти
  • CCXML
  • CURIE
  • EME
  • InkML
  • MSE
  • RIF
  • SMIL Timesheets
  • sXBL
  • WICD
  • XFDL
  • XFrames
  • XBL
  • XMLHttpRequest
Смернице
  • Web Content Accessibility Guidelines
Иницијатива
Застарело
  • C-HTML
  • HDML
  • JSSS
  • PGML
  • VML
  • XHTML+MathML+SVG
Организације
  • Advisory Committee (AC)
  • World Wide Web Foundation
Изабране групе
  • Advisory Board (AB)
  • Technical Architecture Group (TAG)
Радне групе
Затворене групе
  • Device Description (DDWG)
  • HTML
  • WebOnt (Semantic Web Activity)
Софтвер
  • CERN httpd
  • Libwww
Прегледачи
  • Line Mode (1990–)
  • Arena (1993–98)
  • Agora (1994–97)
  • Argo (1994–97)
  • Amaya (browser/editor, 1996–2012)
Конференције
  • International World Wide Web Conference (IW3C)
    • Steering Committee (IW3C2)
    • First conference ("WWW1", 1994)
Нормативна контрола: Државне Уреди на Википодацима
  • Немачка
  • Израел
  • Сједињене Државе