Dom7 — это компактная библиотека для работы с DOM, часто используемая вместе с фреймворком Framework7. Помимо удобного манипулирования элементами страницы, Dom7 предоставляет набор вспомогательных функций для работы со строками, которые упрощают обработку текстового контента.
text():
получение и установка текста элементаМетод text() позволяет как получить текстовое
содержимое элемента, так и установить новый
текст.
// Получение текста первого элемента в наборе
const content = $('.item-title').text();
// Установка нового текста для всех выбранных элементов
$('.item-title').text('Новый заголовок');
Особенности:
$('.item-title').text((index, oldText) => `${oldText} (${index})`);
html(): работа с
HTML-содержимымМетод html() позволяет читать или изменять HTML
внутри элемента.
// Получение HTML первого элемента
const htmlContent = $('.item-content').html();
// Установка HTML для всех элементов
$('.item-content').html('<strong>Выделенный текст</strong>');
Особенности:
val():
работа со значениями элементов формМетод val() предназначен для работы с значениями
<input>, <textarea> и
<select>.
// Получение значения
const inputValue = $('#username').val();
// Установка значения
$('#username').val('Иванов');
Особенности:
<select> позволяет множественный
выбор, возвращается массив выбранных значений.$('#username').val((index, oldValue) => oldValue.toUpperCase());
trim(): удаление
пробельных символовДля работы с обрезкой пробелов Dom7 предоставляет
метод trim(). Он удаляет начальные и конечные
пробелы, позволяя подготовить строки для последующих
операций.
const input = $('#username').val().trim();
Особенности:
textAppend()
и htmlAppend(): добавление содержимогоДля добавления строкового содержимого к элементам
существуют методы textAppend() и
htmlAppend().
// Добавление текста к существующему
$('.item-title').textAppend(' - новый текст');
// Добавление HTML
$('.item-content').htmlAppend('<span class="highlight">Новый блок</span>');
Особенности:
Методы attr() и removeAttr() позволяют
получать и изменять строковые атрибуты элементов,
включая id, class, data-* и
другие.
// Получение атрибута
const dataId = $('.item').attr('data-id');
// Установка атрибута
$('.item').attr('data-id', '123');
// Удаление атрибута
$('.item').removeAttr('data-id');
Особенности:
undefined, если атрибут
отсутствует.Dom7 часто используют вместе с шаблонами строк для динамического создания элементов:
const name = 'Иван';
const age = 25;
$('.profile').html(`<p>Имя: ${name}</p><p>Возраст: ${age}</p>`);
Особенности:
html() и шаблонных литералов позволяет
создавать сложные структуры.Для разделения текста на слова или символы используется стандартный Jav * aScript:
const words = $('.item-title').text().split(' ');
const joined = words.join(', ');
$('.item-title').text(joined);
Особенности:
text() и методов массива позволяет создавать
динамически обновляемые текстовые интерфейсы.При работе с методами html() и htmlAppend()
важно избегать прямого вставления пользовательского
ввода, чтобы предотвратить XSS-атаки:
// Небезопасно
$('.item-content').html(userInput);
// Безопасно через text()
$('.item-content').text(userInput);
Метод text() автоматически экранирует
HTML-теги, что делает его безопасным для вывода данных от
пользователей.
Dom7 объединяет в себе следующие ключевые возможности для строк:
text().html(), htmlAppend().val().trim().attr(),
removeAttr().Эти методы позволяют оперативно и безопасно управлять текстовым и HTML-содержимым элементов страницы, сочетая лаконичность кода с гибкостью DOM-манипуляций.