Proprietăți tip de nod și conținutul tag-ul

În acest capitol ne uităm la bază, cele mai importante proprietăți, care sunt responsabile pentru tipul de DOM-nod, tag-ul și conținutul.

Cea mai importantă distincție între DOM-noduri - nodurile sunt obiecte diferite de diferite clase.







De aceea, de exemplu, nodul care corespunde etichetei - unele proprietăți au

- altele au - a treia.

Există unele lucruri în comun, din cauza moștenire.

clase DOM formează o ierarhie.

Obiectul principal în ea: Nod. din care moștenesc restul:

Proprietăți tip de nod și conținutul tag-ul

Imaginea de mai sus prezintă principalele clase:

Găsiți clasa nod este foarte simplu - suficient să-l ducă la linia, de exemplu, aduce:

XHTML nodeName poate fi litere mari

În browser, există două moduri de procesare a documentelor: HTML și XML-mode. Acesta este utilizat în mod obișnuit modul HTML.

XML-mode este activat atunci când browserul primește XML document prin intermediul XMLHttpRequest (tehnologia AJAX) sau prezența antetul Content-Type: application / xml + xhtml.

În XML modul registru este salvat și poate emite nodeName «organism» sau «Suprastructură» - exact așa cum este indicat aici. XML-mode este utilizat foarte rar.

Diferența se reflectă în numele proprietăților, dar nu este evident.

Astfel, cu ajutorul tagName, putem lucra doar cu elementele, și nodeName ceva se poate spune despre alte tipuri de noduri.

innerHTML proprietate - una dintre cele mai frecvent utilizate.

innerHTML nu este la fel de simplu cum ar părea, și este plină cu unele dintre subtilitățile care pot crea confuzie novice și programator, uneori, cu experiență.

Verificați-le. Chiar dacă aceste dificultăți nu au fost încă, această informație va fi întârziată undeva în minte și de a ajuta atunci când apare o problemă.

Pentru tabelele din IE9- - innerHTML read-only

În Internet Explorer, versiunea 9 și versiunile anterioare, innerHTML este read-only pentru elementele COL. COLGROUP. FRAMESET. HEAD. HTML. STIL. TABEL. TBODY. TFOOT. THEAD. TITLUL. TR.

În special, IE9- interzis intrarea innerHTML pentru toate elementele de masă, în plus față de celule (TD / TH).

Adăugarea innerHTML + = efectueaza dublajului

Sintactic, puteți adăuga text la innerHTML prin + =:

În practică, acest lucru ar trebui să fie utilizat cu mare precauție, pentru că, de fapt, nu există nici un plus și rescrierea:

Având în vedere că noua valoare este scris de la zero, toate imaginile și alte resurse vor fi reîncărcată. In exemplul de mai sus, a doua linie reîncarcă smile.gif. care era în fața ei. În cazul în care chatDiv o mulțime de text, atunci repornirea va fi foarte vizibile.

Există și alte efecte secundare, de exemplu, în cazul în care textul existent a fost selectat cu mouse-ul, în cele mai multe browsere, această selecție va fi plecat. În cazul în care a fost HTML . în care a intrat ceva vizitator, valoarea introdusă va dispărea. Și așa mai departe.

Din fericire, există și alte modalități de a adăuga conținut fără a utiliza innerHTML.

Script-urile nu sunt executate

Dacă există innerHTML script-ul tag-ul - acesta nu va fi executat.

Exemplu tag de închidere Acesta este împărțit în două linii, ca în caz contrar, browser-ul va crede că acest lucru este sfârșitul script-ul. Script-ul introdus nu este executat.

Excepție - IE9-, script-ul a introdus este executat, în cazul în care acesta are un atribut Suspendați. Dar aceasta este o caracteristică standard, care nu ar trebui să fie utilizat.

IE8- taie stilul și script-ul de la începutul innerHTML

Dacă la începutul innerHTML sunt stiluri