Видове и сайтове със съдържание DOM

Информация за DOM възли

DOM дървото по-възли могат да бъдат много различни един от друг. Единици за различните видове имат различни свойства. Ето защо, преди да започне да работи с определен възел, може да се наложи да получите информация за него. Най-DOM интерфейсът има някои общи свойства за всички възли, които представляват информация за текущия възел.

DOM дървото по-възли могат да бъдат от различни видове. В момента има общо 12 вида единици, но на практика е необходимо да се работи само с някои от тях:

NodeType имот съдържа код, съответстващ на вида на възел. По-специално:

Запомни тези кодове не е задължително. За да разберете типа на възела, можете да проверите, принадлежащи към съответния клас с помощта на оператора на instanceof:

Съдържателни сайтове DOM

Когато се работи с DOM-възел, често е необходимо да получи информацията, която се съдържа в тях, или дори да го замени. Най-DOM интерфейсът осигурява няколко свойства, за да работят с възли съдържание.

InnerHTML имот е достъпна само за елементите възли и е най-често. Това е, като низ съдържа всички кода вътре в даден елемент. Този имот е на разположение, за да бъдат презаписани, така че може да се използва не само за да получат необходимата информация, но и да променя съдържанието на елемента.

По дефиниция, то е ясно, че тази функция е достъпна само за сдвоени тагове.

InnerHTML имот има редица функции, които трябва да знаете.

В innerHTML да напишете някакъв текст, но винаги се връща при четене валиден HTML-код.

Когато всяка промяна innerHTML елемент е напълно покаже отново. Това означава, че ако innerHTML съдържа няколко елемента и да ги добавите към друга, едни и същи елементи ще бъдат претворени. Това може значително да забави показване на страницата. За да добавяте или премахвате елементи е по-добре да се използват специални методи.

OuterHTML имот се предлага за всички елементи възли. Това е низ, който уточнява, че цялото съдържание на сайта, включително отваряне и затваряне маркери.

Строго погледнато, промяната outerHTML даден елемент не е възможно. Но способността да зададете нова стойност на този имот съществува и може да бъде използван. И наистина, след пренаписване свойства на мястото на оригиналния елемент ще бъде нов елемент, но не outerHTML промени.

Факт е, че когато първоначалния елемент outerHTML е отстранен напълно, и се създава ново на негово място. В този случай, старата връзка е адресирано до един елемент, който вече е бил отстранен. А това означава, че той ще има outerHTML бивш.

За да работите с новия елемент първо трябва да го намери. Ако това не е необходимо, използването на outerHTML може да бъде много удобно.

Горният пример показва, че заместването на елемент се извършва, както се очаква. Въпреки това, outerHTML имот остава непроменен.

outerHTML имот се използва рядко. Само за по-лесно да се използва съдържанието имот innerHTML на елемент. Най-очевидният случай за outerHTML е определението за елемент за маркиране. Но в този случай е по-лесно да се използва отделна собственост име на маркер.

textContent

TextContent имот съдържа само текста намира вътре в клетката. Маркерите не са включени в върнатия низ.

Новите редове, също са включени в стойността на имота. Оказва се, че textContent е сумиране на всички текстови възли елемент.

TextContent имот е на разположение за запис. Това е много полезно, защото всичко, което отива в имот автоматично става един ред. Например, един опит да се инжектира зловреден код не е успешно, тъй като тя ще се провали.