Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Если в innerHTML есть тег script — он не будет выполнен
<div id="my"></div>
<script> var elem = document.getElementById('my'); elem.innerHTML = 'ТЕСТ<script>alert(1);</scr'+'ipt>'; </script>
В примере закрывающий тег </scr'+'ipt> разбит на две строки, т.к. иначе браузер подумает, что это конец скрипта. Вставленный скрипт не выполнится. Исключение — IE<10, в нем вставляемый скрипт выполняются, если у него есть атрибут defer (это нестандартная возможность <div id="my"></div>
<script> var elem = document.getElementById('my'); elem.innerHTML = 'Для IE<script defer>alert(1);</scr'+'ipt>'; </script>
IE<9 обрезает style и script в начале innerHTML Если скрипт или стиль находятся в начале innerHTML, то старый IE уберет их. Визуальный эффект очевиден — стили не применятся. Открыть пример (в IE9 будет режим IE8). Смотрите также innerHTML на MSDN на эту тему. OuterHTML: HTML узла целиком СвойствоouterHTMLсодержит HTML узла целиком. Оно поддерживается всеми браузерами давно, кроме Firefox — в нём начиная с версии 11. Пример чтения outerHTML <div id="hi">Привет <b>Мир</b></div>
<script> var div = document.getElementById('hi');
alert(div.outerHTML); // <div>Привет <b>Мир</b></div> </script>
Можно и записать outerHTML, однако при этом новый текст будет вставлен вместо узла, а сама переменная не изменится. Это отлично видно на примере <div id="hi">Привет <b>Мир</b></div>
<script> var div = document.getElementById('hi');
div.outerHTML = '<p>Новый HTML!</p>';
alert(div.tagName); // DIV alert(div.innerHTML); // Привет <b>Мир</b> </script>
Как видно из примера выше, при замене div.outerHTML в переменной div остаётся старый узел, который теперь оторван от документа, но полностью «жизнеспособен». Date: 2015-07-17; view: 430; Нарушение авторских прав |