Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как записать в страницу джаваскриптовский код? (https://javascript.ru/forum/dom-window/2499-kak-zapisat-v-stranicu-dzhavaskriptovskijj-kod.html)

Tray 06.01.2009 13:57

Как записать в страницу джаваскриптовский код?
 
Бегун для отображения рекламы на хтмле выдает вот такой код
<script src='http://autocontext.begun.ru/autocontext.js' type='text/javascript'></script>


Вобщем, мне хотелось бы по какому-то условию (по значению переменной, допустим) вставить в хтмл-страницу код рекламки (с бегуна, например). Если переменная=0, то пусть этого кода на странице не будет и реклама не будет отображаться. Если же она=1, тогда будет.

==========================
я пытался сделать так:

где-то в хтмл-странице есть допустим таблица следующего вида
<table><tr>
<td id="adv"> 
</td>
</td></tr></table>


ниже идет такой блок
<script type="text/javascript">
document.getElementById("adv").innerHTML="<script src='http://autocontext.begun.ru/autocontext2.js' type='text/javascript'></script>";
</script>


не получается так, не записывается джаваскриптовский блок (в данном случае ссылка на рекламу) В другой джаваскриптовский блок.

Octane 06.01.2009 14:08

var script = document.createElement('script');
script.src = 'http://autocontext.begun.ru/autocontext2.js';
script.type = 'text/javascript';
document.head.appendChild(script);

Андрей Параничев 06.01.2009 14:41

Octane,
Вывод из скрипта перепишет страницу же.

Octane 06.01.2009 14:49

Ну это уже следующая проблема :)

Gvozd 06.01.2009 17:07

модет быть так попробовать?
var script = document.createElement('script');
script.src = 'http://autocontext.begun.ru/autocontext2.js';
script.type = 'text/javascript';
document.getElementById("adv").appendChild(script);

Kolyaj 06.01.2009 17:25

Gvozd,
а зачем копировать код Octane?

Андрей Параничев 06.01.2009 18:11

Gvozd,
Вывод из скрипта перепишет страницу же.

Tray,
Я вам советую решать эту проблему на сервере - если условие соблюдено, выводите тег <script>, если нет - не выводите. Силами JavaScript, в вашем конкретном случае, эта задача решается непросто: методом замены функции document.write на буффер. Иначе подключение этого скрипта не сделает вывод в нужном вам месте, а перепишет всю страницу полностью - будет отображаться только реклама, вместо всей страницы.

ImTray 07.01.2009 16:17

Код:

var script = document.createElement('script');
script.src = 'http://autocontext.begun.ru/autocontext2.js';
script.type = 'text/javascript';
document.getElementById("adv").appendChild(script);

эта штука не работает :( она ничего не меняет на странице
эх, а я так надеялся

я просто вставил этот блок в середину страницы. или надо было в определенное?
=======================

Цитата:

Я вам советую решать эту проблему на сервере - если условие соблюдено, выводите тег <script>, если нет - не выводите. Силами JavaScript, в вашем конкретном случае, эта задача решается непросто: методом замены функции document.write на буффер. Иначе подключение этого скрипта не сделает вывод в нужном вам месте, а перепишет всю страницу полностью - будет отображаться только реклама, вместо всей страницы.
я, честно сказать, не понял, что ты мне пытаешься сказать.
короче, средствами яваскрипта здесь не обойтись, да?


Часовой пояс GMT +3, время: 13:24.