jQuery метод $.htmlPrefilter()
Определение и применение
jQuery метод $.htmlPrefilter() производит изменение и фильтр HTML строк, которые прошли через методы манипуляции с jQuery.
Более подробную информацию об использовании объекта вы можете найти в официальной документации
jQuery синтаксис:
$.htmlPrefilter( html );html - String
Добавлен в версии jQuery
1.12 / 2.2Значения параметров
| Параметр | Описание |
|---|---|
| html | Строка HTML, с которой необходимо работать. |
Поведение с jQuery 3.5
Стандартная $.htmlPrefilter() возвращает входную строку без преобразования самозакрывающихся тегов. Для
обычных HTML-элементов пишите явные закрывающие теги: <div></div>. Переопределение функции не
заменяет очистку недоверенного HTML; пример ниже демонстрирует изменение строки, а не защиту от внедрения кода.
Пример использования
Этот метод редко необходимо вызывать напрямую, вместо этого, используйте его в качестве точки входа для изменения существующих методов манипуляции jQuery.
Например, чтобы удалить все теги
<del>
из входящих HTML строк, сделайте следующее:
Метод $.htmlPrefilter() — пример 1
Нажмите . Измените JavaScript и запустите пример повторно. Используется jQuery 4.0.0.
index.html
<p>Результат выполнения выводится в консоль под примером.</p>
main.js
var htmlPrefilter = $.htmlPrefilter,
rdel = /<(del)(?=[\s>])[\w\W]*?<\/\1\s*>/gi // инициализируем переменную, содержащую регулярное выражение
$.htmlPrefilter = function (html) {
return htmlPrefilter.call(this, html).replace(rdel, '')
}
style.css
body {
margin: 16px;
font:
16px/1.5 system-ui,
sans-serif;
overflow-wrap: anywhere;
}
img,
input,
select,
textarea,
button {
max-width: 100%;
}
Нажмите , чтобы запустить пример.