Umbrella JS предоставляет лёгкий и компактный способ работы с DOM,
позволяя манипулировать элементами страницы с минимальным количеством
кода. Одним из ключевых аспектов является различие между методами
text() и html(), которые позволяют получать и
изменять содержимое элементов, но делают это принципиально
по-разному.
text()Метод text() работает с текстовым содержимым
элементов, игнорируя любую HTML-разметку.
Основные особенности:
u('.example').text();
Возвращает всю текстовую информацию внутри выбранного элемента без тегов.
u('.example').text('Новый текст');
При установке текста вся существующая HTML-разметка удаляется, а на её месте появляется только строка текста.
Пример:
<div class="example">
<span>Старый текст</span>
</div>
u('.example').text('Привет мир');
Результат в DOM:
<div class="example">Привет мир</div>
Здесь <span> был удалён, а текст заменён
напрямую.
html()Метод html() работает с HTML-содержимым
элементов, что позволяет как получать, так и устанавливать
разметку целиком.
Основные особенности:
u('.example').html();
Возвращает строку с полной внутренней HTML-разметкой элемента.
u('.example').html('<strong>Жирный текст</strong>');
Позволяет вставлять теги и создавать вложенные структуры внутри выбранного элемента.
Пример:
<div class="example">
<span>Старый текст</span>
</div>
u('.example').html('<em>Новый текст</em>');
Результат в DOM:
<div class="example"><em>Новый текст</em></div>
HTML-теги сохраняются и корректно интерпретируются браузером.
| Характеристика | text() |
html() |
|---|---|---|
| Тип содержимого | Только текст | HTML-разметка и текст |
| Влияние на теги | Удаляет все вложенные теги | Сохраняет и обрабатывает теги |
| Безопасность | Текст безопасен, нет XSS риска | Нужно контролировать ввод, возможен XSS |
| Использование | Простое отображение текста | Динамическая вставка HTML-контента |
Пример совместного использования:
let element = u('.example');
// Получаем текст без тегов
let plainText = element.text();
// Вставляем новый HTML
element.html('<span>' + plainText + '</span>');
Этот приём полезен, когда нужно сначала очистить или обработать текст, а затем оформить его с разметкой.
text() используют для отображения данных, которые
должны быть чистым текстом, без риска внедрения HTML
или скриптов.html() применяют, когда требуется динамическое
создание сложной структуры с тегами, форматированием и
вложенными элементами.html().text().Использование этих методов позволяет точно контролировать содержимое
элементов и предотвращает ошибки при работе с HTML-разметкой. Правильный
выбор между text() и html() обеспечивает как
безопасность, так и корректное отображение данных.