Подсветка
Ограниченная доступность
Эта функция не относится к Baseline, так как она не работает в некоторых из наиболее широко используемых браузеров.
Интерфейс Highlight API пользовательской подсветки CSS используется для представления набора экземпляров Range, которые необходимо стилизовать с помощью API.
Чтобы стилизовать произвольные диапазоны на странице, создайте новый объект Highlight, добавьте в него один или несколько объектов Range, и зарегистрируйте его с помощью HighlightRegistry.
Экземпляр Highlight представляет собой объект, похожий на Set, который может содержать один или несколько объектов Range.
Конструктор
Highlight()-
Возвращает новый объект
Highlight.
Свойства экземпляра
Интерфейс Highlight не наследует никаких свойств.
Highlight.priority-
Число, указывающее приоритет этого объекта
Highlight. При перекрытии нескольких выделений браузер использует этот приоритет для определения способа стилизации перекрывающихся частей. -
Highlight.sizeТолько чтение -
Возвращает количество диапазонов в объекте
Highlight. Highlight.type-
Перечислимое значение
String, используемое для указания семантического значения выделения. Это позволяет средствам вспомогательных технологий включать это значение при отображении выделения пользователям.
Методы экземпляра
Интерфейс Highlight не наследует никаких методов.
Highlight.add()-
Добавить новый диапазон в это выделение.
Highlight.clear()-
Удалить все диапазоны из этого выделения.
Highlight.delete()-
Удалить диапазон из этого выделения.
Highlight.entries()-
Возвращает новый объект итератора, содержащий каждый диапазон в объекте выделения в порядке вставки.
Highlight.forEach()-
Вызывает указанный обратный вызов один раз для каждого диапазона в объекте выделения в порядке вставки.
Highlight.has()-
Возвращает логическое значение, подтверждающее, присутствует ли диапазон в объекте выделения или нет.
Highlight.keys()-
Псевдоним для
Highlight.values(). Highlight.values()-
Возвращает новый объект итератора, который возвращает диапазоны в объекте выделения в порядке вставки.
Примеры
Следующий пример демонстрирует, как создать диапазоны, создать для них новый объект Highlight и зарегистрировать его для стилизации на странице:
const parentNode = document.getElementById("foo");
// Create a couple of ranges.
const range1 = new Range();
range1.setStart(parentNode, 10);
range1.setEnd(parentNode, 20);
const range2 = new Range();
range2.setStart(parentNode, 40);
range2.setEnd(parentNode, 60);
// Create a custom highlight for these ranges.
const highlight = new Highlight(range1, range2);
// Register the ranges in the HighlightRegistry.
CSS.highlights.set("my-custom-highlight", highlight);
Следующий фрагмент CSS демонстрирует, как стилизовать зарегистрированную пользовательскую подсветку с помощью псевдоэлемента ::highlight:
::highlight(my-custom-highlight) {
background-color: peachpuff;
}
Спецификации
| Спецификация |
|---|
| CSS Custom Highlight API Модуль уровня 1 # highlight |
Совместимость браузеров
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
@@iterator |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
Highlight |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
Highlight |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
add |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
clear |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
delete |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
entries |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
forEach |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
has |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
keys |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
priority |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
size |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
type |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
values |
105 | 105 | превью | 91 | 17.2 | 105 | Нет | 72 | 17.2 | 20.0 | 105 |
См. также
© 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/Highlight