У меня есть div contentEditable
, внутри которого мне нужно разрешить пользователю редактировать HTML.
Нужно ли мне дезинфицировать HTML, который пользователь пишет внутри этого div?
Я имею в виду, что когда я извлекаю HTML-код из этого div, он уже очищен. Например, если бы я написал что-то вроде <>
внутри div, а затем получил бы это обратно, я бы получил <>
.
Проверьте это здесь:http://jsfiddle.net/mByWT/
Мой другой вопрос: :является ли это поведение стандартом, и могу ли я полагаться на него во всех браузерах?
РЕДАКТИРОВАТЬ
Теперь я могу заключить, что это общая закономерность :
element.innerHTML
. возвращает экранированный HTML --экранирует <
, >
и &
, но не заключает в кавычкиelement.innerText
и element.textContent
вернуть буквальный HTML без экранированияСмотрите это:http://jsfiddle.net/2CmjG/