Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

выполнение произольного кода javascript

373
12 апреля 2007 года
unmoved
216 / / 28.11.2004
Допустим это строка текста(кода), я хочу его выполнить, есть ли какая-то команда для этого?
4
12 апреля 2007 года
mike
3.7K / / 01.10.2002
Обычно так делают:

 
Код:
document.write('<script type="text/javascript">'+str+'</script>');


где str - строка кода, которую нужно выполнить.
7.9K
12 апреля 2007 года
vasa_c
191 / / 05.04.2007
А еще делают eval() :)
12
12 апреля 2007 года
alekciy
3.0K / / 13.12.2005
А еще innertText через DOM.

Вот только о том ли автор темы спрашивает? Что понимаем под "произвольный код"? У меня с этим словосочетание не очень хорошие ассоциации.... выход из песочницы?
7.9K
12 апреля 2007 года
vasa_c
191 / / 05.04.2007
он хочет выполнить "строку текста (кода)".
А как через innerText?
12
13 апреля 2007 года
alekciy
3.0K / / 13.12.2005
В смысле как? Берешь через DOM и цепляешь в любое место страницы. Ну к примеру так:
Код:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title></title>
</head>

<body>
<script type="text/javascript" id="script">
var code = 'alert("Hello Word!")';
function foo() {
    document.getElementById('script').innerText = code;
};
</script>
<input type="button" value="ooo" &#111;&#110;click="foo()">
</body>

</html>
7.9K
13 апреля 2007 года
vasa_c
191 / / 05.04.2007
Работает только в опере.
92
13 апреля 2007 года
Тень Пса
2.2K / / 19.10.2006
eval или способ с print.... я думаю самые 2 простых способа без замудрённостей...
7.9K
13 апреля 2007 года
vasa_c
191 / / 05.04.2007
Способ с print (document.write, как я понял) работает только при формировании страницы. После onload он убьет весь документ.
92
13 апреля 2007 года
Тень Пса
2.2K / / 19.10.2006
ну да, так и есть
12
13 апреля 2007 года
alekciy
3.0K / / 13.12.2005
Цитата: vasa_c
Работает только в опере.


Угу. С ходу я только этот пример и вспомнил. Однако все равно через DOM можно динамически подгружать JavaScript код как исполняемый. Причем есть и кроссбраузерное решение, я делал. Только где-то в черновиках видно валяется, ибо что-то не нашел.
А вообще этот вопрос поднимали уже, и вроде как даже на этом форуме.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог