- HTMLTableElement
- Свойства
- Методы
- Спецификации
- Browser compatibility
- Смотрите также
- Found a content problem with this page?
- MDN
- Support
- Our communities
- Developers
- HTMLTableElement: tBodies property
- Value
- Examples
- Specifications
- Browser compatibility
- See also
- Found a content problem with this page?
- MDN
- Support
- Our communities
- Developers
- Навигация по DOM-элементам
- Сверху: documentElement и body
- Дети: childNodes, firstChild, lastChild
- DOM-коллекции
- Соседи и родитель
- Навигация только по элементам
- Table tBodies Collection
- Browser Support
- Syntax
- Properties
- Methods
- Technical Details
- More Examples
- Example
- Example
- Example
- Related Pages
- COLOR PICKER
- HOW TO
- SHARE
- CERTIFICATES
- Report Error
- Thank You For Helping Us!
- Top Tutorials
- Top References
- Top Examples
- Web Certificates
- Table tBodies Collection
- Browser Support
- Syntax
- Properties
- Methods
- Technical Details
- More Examples
- Example
- Example
- Example
- Related Pages
- COLOR PICKER
- Report Error
- Thank You For Helping Us!
HTMLTableElement
Объекты table описывают интерфейс HTMLTableElement , который содержит дополнительные свойства и методы (по сравнению с обычным объектным интерфейсом element которые также доступны вследствие наследования) для управления внешним видом таблиц HTML.
Свойства
Наследует свойства от родителя, HTMLElement .
caption возвращает заголовок таблицы.
tHead возвращает header таблицы.
tFoot возвращает footer таблицы.
rows возвращает строки таблицы.
tBodies возвращает тела таблицы.
align возвращает/устанавливает выравнивание таблицы.
bgColor возвращает/устанавливает цвет фона таблицы.
border возвращает/устанавливает рамку таблицы.
cellPadding возвращает/устанавливает cellpadding.
cellSpacing возвращает/устанавливает cellspacing.
frame определяет, какие стороны таблицы имеют рамку.
rules определяет, какие внутренние рамки являются видимыми.
summary возвращает/устанавливает описание таблицы.
width возвращает/устанавливает ширину таблицы.
Методы
Наследует методы от своего родителя, HTMLElement .
createTHead создаёт header таблицы.
deleteTHead удаляет header таблицы.
createTFoot создаёт footer таблицы.
deleteTFoot удаляет footer таблицы.
createCaption создаёт заголовок таблицы.
deleteCaption удаляет заголовок таблицы.
insertRow вставляет строку.
deleteRow удаляет строку.
Спецификации
Спецификация | Статус | Комментарий |
---|---|---|
HTML Living Standard Определение ‘HTMLTableElement’ в этой спецификации. | Живой стандарт | Добавляет свойство sortable и метод stopSorting() . |
HTML5 Определение ‘HTMLTableElement’ в этой спецификации. | Рекомендация | Добавляет метод createTBody() . Obsoleted xaz |
Document Object Model (DOM) Level 2 HTML Specification Определение ‘HTMLTableElement’ в этой спецификации. | Устаревшая | Defined when caption , tHead , tFoot , insertRow() , and deleteRow() raise exceptions. |
Document Object Model (DOM) Level 1 Specification Определение ‘HTMLTableElement’ в этой спецификации. | Устаревшая | Initial definition. |
Browser compatibility
BCD tables only load in the browser
Смотрите также
Found a content problem with this page?
This page was last modified on 7 нояб. 2022 г. by MDN contributors.
Your blueprint for a better internet.
MDN
Support
Our communities
Developers
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2023 by individual mozilla.org contributors. Content available under a Creative Commons license.
HTMLTableElement: tBodies property
The HTMLTableElement.tBodies read-only property returns a live HTMLCollection of the bodies in a .
Although the property is read-only, the returned object is live and allows the modification of its content.
The collection returned includes implicit elements. For example:
table> tr> td>cell onetd> tr> table>
The HTML DOM generated from the above HTML will have a element even though the tags are not included in the source HTML.
Value
Examples
This snippet gets the number of bodies in a table.
Specifications
Browser compatibility
BCD tables only load in the browser
See also
Found a content problem with this page?
This page was last modified on Apr 7, 2023 by MDN contributors.
Your blueprint for a better internet.
MDN
Support
Our communities
Developers
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2023 by individual mozilla.org contributors. Content available under a Creative Commons license.
Навигация по DOM-элементам
DOM позволяет нам делать что угодно с элементами и их содержимым, но для начала нужно получить соответствующий DOM-объект.
Все операции с DOM начинаются с объекта document . Это главная «точка входа» в DOM. Из него мы можем получить доступ к любому узлу.
Так выглядят основные ссылки, по которым можно переходить между узлами DOM:
Поговорим об этом подробнее.
Сверху: documentElement и body
Самые верхние элементы дерева доступны как свойства объекта document :
= document.documentElement Самый верхний узел документа: document.documentElement . В DOM он соответствует тегу . = document.body Другой часто используемый DOM-узел – узел тега : document.body . = document.head Тег доступен как document.head .
Нельзя получить доступ к элементу, которого ещё не существует в момент выполнения скрипта.
В частности, если скрипт находится в , document.body в нём недоступен, потому что браузер его ещё не прочитал.
Поэтому, в примере ниже первый alert выведет null :
В DOM значение null значит «не существует» или «нет такого узла».
Дети: childNodes, firstChild, lastChild
Здесь и далее мы будем использовать два принципиально разных термина:
- Дочерние узлы (или дети) – элементы, которые являются непосредственными детьми узла. Другими словами, элементы, которые лежат непосредственно внутри данного. Например, и являются детьми элемента .
- Потомки – все элементы, которые лежат внутри данного, включая детей, их детей и т.д.
- (и несколько пустых текстовых узлов):
- и вложенные в них:
(ребёнок
- ) и (ребёнок
) – в общем, все элементы поддерева.
Коллекция childNodes содержит список всех детей, включая текстовые узлы.
Пример ниже последовательно выведет детей document.body :
Обратим внимание на маленькую деталь. Если запустить пример выше, то последним будет выведен элемент . На самом деле, в документе есть ещё «какой-то HTML-код», но на момент выполнения скрипта браузер ещё до него не дошёл, поэтому скрипт не видит его.
Свойства firstChild и lastChild обеспечивают быстрый доступ к первому и последнему дочернему элементу.
Они, по сути, являются всего лишь сокращениями. Если у тега есть дочерние узлы, условие ниже всегда верно:
elem.childNodes[0] === elem.firstChild elem.childNodes[elem.childNodes.length - 1] === elem.lastChild
Для проверки наличия дочерних узлов существует также специальная функция elem.hasChildNodes() .
DOM-коллекции
Как мы уже видели, childNodes похож на массив. На самом деле это не массив, а коллекция – особый перебираемый объект-псевдомассив.
И есть два важных следствия из этого:
for (let node of document.body.childNodes) < alert(node); // покажет все узлы из коллекции >
Это работает, потому что коллекция является перебираемым объектом (есть требуемый для этого метод Symbol.iterator ).
alert(document.body.childNodes.filter); // undefined (у коллекции нет метода filter!)
Первый пункт – это хорошо для нас. Второй – бывает неудобен, но можно пережить. Если нам хочется использовать именно методы массива, то мы можем создать настоящий массив из коллекции, используя Array.from :
alert( Array.from(document.body.childNodes).filter ); // сделали массив
DOM-коллекции, и даже более – все навигационные свойства, перечисленные в этой главе, доступны только для чтения.
Мы не можем заменить один дочерний узел на другой, просто написав childNodes[i] = . .
Для изменения DOM требуются другие методы. Мы увидим их в следующей главе.
Почти все DOM-коллекции, за небольшим исключением, живые. Другими словами, они отражают текущее состояние DOM.
Если мы сохраним ссылку на elem.childNodes и добавим/удалим узлы в DOM, то они появятся в сохранённой коллекции автоматически.
Коллекции перебираются циклом for..of . Некоторые начинающие разработчики пытаются использовать для этого цикл for..in .
Не делайте так. Цикл for..in перебирает все перечисляемые свойства. А у коллекций есть некоторые «лишние», редко используемые свойства, которые обычно нам не нужны:
Соседи и родитель
Соседи – это узлы, у которых один и тот же родитель.
- говорят, что – «следующий» или «правый» сосед
- также можно сказать, что «предыдущий» или «левый» сосед .
Следующий узел того же родителя (следующий сосед) – в свойстве nextSibling , а предыдущий – в previousSibling .
Родитель доступен через parentNode .
// родителем является alert( document.body.parentNode === document.documentElement ); // выведет true // после идёт alert( document.head.nextSibling ); // HTMLBodyElement // перед находится alert( document.body.previousSibling ); // HTMLHeadElement
Навигация только по элементам
Навигационные свойства, описанные выше, относятся ко всем узлам в документе. В частности, в childNodes находятся и текстовые узлы и узлы-элементы и узлы-комментарии, если они есть.
Но для большинства задач текстовые узлы и узлы-комментарии нам не нужны. Мы хотим манипулировать узлами-элементами, которые представляют собой теги и формируют структуру страницы.
Поэтому давайте рассмотрим дополнительный набор ссылок, которые учитывают только узлы-элементы:
Эти ссылки похожи на те, что раньше, только в ряде мест стоит слово Element :
- children – коллекция детей, которые являются элементами.
- firstElementChild , lastElementChild – первый и последний дочерний элемент.
- previousElementSibling , nextElementSibling – соседи-элементы.
- parentElement – родитель-элемент.
Свойство parentElement возвращает родитель-элемент, а parentNode возвращает «любого родителя». Обычно эти свойства одинаковы: они оба получают родителя.
За исключением document.documentElement :
alert( document.documentElement.parentNode ); // выведет document alert( document.documentElement.parentElement ); // выведет null
Причина в том, что родителем корневого узла document.documentElement ( ) является document . Но document – это не узел-элемент, так что parentNode вернёт его, а parentElement нет.
Эта деталь может быть полезна, если мы хотим пройти вверх по цепочке родителей от произвольного элемента elem к , но не до document :
while(elem = elem.parentElement) < // идти наверх до alert( elem ); >
Изменим один из примеров выше: заменим childNodes на children . Теперь цикл выводит только элементы:
Table tBodies Collection
Note: The elements in the collection are sorted as they appear in the source code.
Browser Support
Syntax
Properties
Property | Description |
---|---|
length | Returns the number of elements in the collection. |
Methods
Method | Description |
---|---|
[index] | Returns the element from the collection with the specified index (starts at 0). |
Technical Details
DOM Version: | Core Level 2 Document Object | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Return Value: | An HTMLCollection Object, representing all elements in the More ExamplesExampleAlert the innerHTML of the first element (index 0) in the table: ExampleAlert the innerHTML of the first element (index 0) in the table: ExampleAlert the innerHTML of the element with in the table: Related PagesCOLOR PICKERHOW TOSHARECERTIFICATESReport ErrorIf you want to report an error, or if you want to make a suggestion, do not hesitate to send us an e-mail: Thank You For Helping Us!Your message has been sent to W3Schools. Top TutorialsTop ReferencesTop ExamplesWeb CertificatesW3Schools is optimized for learning, testing, and training. Examples might be simplified to improve reading and basic understanding. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using this site, you agree to have read and accepted our terms of use, cookie and privacy policy. Copyright 1999-2020 by Refsnes Data. All Rights Reserved. Table tBodies CollectionNote: The elements in the collection are sorted as they appear in the source code. Browser SupportSyntaxProperties
Methods
Technical Details
|