Используя расширения объектной модели документа

WebKit обеспечивает расширения Объектной модели документа (DOM), обеспечивающие дополнительную функциональность, не указанную рекомендациями W3C. Расширения DOM являются частью Objective C DOM API, но не являются частью W3C спецификация DOM (и не реализованные в JavaScript).

Расширения в настоящее время обеспечивают дополнения к DOMHTMLElement, DOMDocument, и DOMRGBColor. Дополнительное DOMHTMLElement подкласс, DOMHTMLEmbedElement, обеспечивает Objective C класс DOM для HTML embed элементы.

Среди полезных функций расширений внутренний/внешний HTML и текстовые методы доступа. Учитывая блок элемента HTML (a DOMHTMLElement), можно динамично получить и установить HTML и текст от того блока с помощью этих методов: innerText получает внутреннее содержание блока без его HTML-тэгов; innerHTML получает внутреннее содержание блока (с его HTML-тэгами, но не его тегами включения); outerHTML получает все содержание блока. Например, учитывая этот блок HTML:

<DIV id=”paras”>
    <P>Paragraph 1</P>
    <P>Paragraph 2</P>
</DIV>

innerHTML метод возвратится (как NSString):

<P>Paragraph 1</P>
<P>Paragraph 2</P>

innerText метод возвратится (как NSString):

Paragraph 1
Paragraph 2

И outerHTML метод возвратится (как NSString):

<DIV id=”paras”>
    <P>Paragraph 1</P>
    <P>Paragraph 2</P>
</DIV>

Каждый из тех методов имеет соответствующий метод установки (setInnerHTML, setInnerText, setOuterHTML) и может использоваться на любом броске элемента в качестве a DOMHTMLElement или любой подкласс его.

Дополнение к DOMRGBColor интерфейс также очень полезен, поскольку он позволяет Вам использовать DOM для доступа к альфа-каналу Уровня 3 CSS RGB (A) цвет, даже при том, что спецификация Уровня 2 DOM не включает его.

Для полного списка расширений, предоставленных Objective C DOM API, посмотрите DOMExtensions.h заголовочный файл.