Текст: свойство wholeText
Базовая реализация Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Чтение только свойство wholeText интерфейса Text возвращает весь текст всех узлов Text, логически смежных с узлом. Текст конкатенируется в порядке документа. Это позволяет указать любой узел текста и получить весь смежный текст как одну строку.
Примечание: Это аналогично вызову Node.normalize() с последующим чтением значения текста, но без изменения структуры дерева.
Значение
Строка с конкатенированным текстом.
Пример
Предположим, у вас есть следующий простой абзац на вашей веб-странице:
<p> Through-hiking is great! <strong>No insipid election coverage!</strong> However, <a href="https://en.wikipedia.org/wiki/Absentee_ballot">casting a ballot</a> is tricky. </p>
Вы решили, что вам не нравится среднее предложение, поэтому удаляете его:
const paragraph = document.querySelector("p"); // Reads the paragraph
paragraph.removeChild(paragraph.childNodes[1]); // Delete the strong element
Теперь у вас остаётся "Пешие походы – здорово! Однако голосование – сложно.", с двумя узлами перед гиперссылкой:
- А
Textсодержащий строку"Through-hiking is great!" - Второй узел
Text, содержащий строку" However, "
Чтобы получить эти два узла одновременно, вы бы вызвали paragraph.childNodes[0].wholeText:
console.log(`'${paragraph.childNodes[0].wholeText}'`); // 'Through-hiking is great! However, '
Спецификации
| Спецификация |
|---|
| DOM # ref-for-dom-text-wholetext① |
Совместимость браузеров
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
wholeText |
2 | 12 | 3.5 | ≤12.1 | 4 | 18 | 4 | ≤12.1 | 3.2 | 1.0 | 4.4 |
См. также
- Интерфейс
Text, к которому он относится.
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Text/wholeText