Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 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: 394; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию