Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите со скриптом,пожалуйста (https://javascript.ru/forum/misc/22179-pomogite-so-skriptom-pozhalujjsta.html)

ale19 09.10.2011 11:36

Помогите со скриптом,пожалуйста
 
Помогите со скриптом,пожалуйста

Была давненько такая тема где
между
<div id="name">бла-бла</div>
<div id="name">бла-бла</div>
<div id="name">бла-бла</div>
<div id="name">бла-бла</div>
<div id="name">бла-бла</div>
вставлялся <div id="foo">
посредством
var elems = document.getElementsByTagName("*");
for (var i = 0, j = 0; i < elems.length; i++) {
if (elems[i].className == "name") {
if (++j / 5==1) {
var div = document.createElement("DIV");
div.className = "foo";
div.innerHTML = 'бла-бла-new';
elems[i].parentNode.insertBefore(div,elems[i].nextSibling);
}}}


скажите как вставить на место бла-бла-new скрипт?

Пробовал так
var elems = document.getElementsByTagName("*");
for (var i = 0, j = 0; i < elems.length; i++) {
if (elems[i].className == "name") {
if (++j / 5==1) {
var div = document.createElement("DIV");
div.className = "foo";
div.innerHTML = '<scri'+'pt type="text/javascript" src="/informer/17"></sc'+'ript>';
elems[i].parentNode.insertBefore(div,elems[i].nextSibling);
}}}


ничего не выходит :(

systemiv 09.10.2011 12:21

Можно дедовским способом, через document.write()

ale19 09.10.2011 12:44

Не подскажете как именно, я сам не догадаюсь

systemiv 09.10.2011 15:05

Цитата:

Сообщение от ale19
if (elems[i].className == "name") {

А где у них класс такой?
Я вижу только ID
Id на класс

Seva1986 09.10.2011 17:11

а ничего что id должен быть уникален?

systemiv 09.10.2011 17:27

<html>
<head>
</head>
<body>
	<div class="name">бла-бла</div>
	<div class="name">бла-бла</div>
	<div class="name">бла-бла</div>
	<div class="name">бла-бла</div>
	<div class="name">бла-бла</div>
</body>
</html>
<script>
	var elems = document.getElementsByTagName("*");
	for (var i = 0, j = 0; i < elems.length; i++) {
		if (elems[i].className == "name") {
			if (++j / 5==1) {
				var div = document.createElement("div");
				div.className = "foo";
				div.innerHTML = '<sc' + 'ript>alert(1);</sc' + 'ript>';
				elems[i].parentNode.insertBefore(div,elems[i].nextSibling);
			}
		}
	}
</script>

aiky 09.10.2011 18:37

Что мешает сделать createElement('script')?;

systemiv 09.10.2011 19:30

Ничего. Просто лишняя писанина.

ale19 10.10.2011 09:44

<div class="name">бла-бла</div>
<div class="name">бла-бла</div>
<div class="name">бла-бла</div>
<div class="name">бла-бла</div>
<div class="name">бла-бла</div>

пробовал так
var elems = document.getElementsByTagName("*");   
    for (var i = 0, j = 0; i < elems.length; i++) {    
        if (elems[i].className == "name") {         
            if (++j / 5==1) {
                var div = document.createElement("div");
                div.className = "foo";
                div.innerHTML = '<scr'+'ipt>'+'document.write(<scri'+'pt type="text/javascript" src="/informer/17"></scr'+'ipt>);'+'</scr'+'ipt>';
                elems[i].parentNode.insertBefore(div,elems[i].nextSibling); 
            }        
        }    
    }

и пробовал создавать createElement('script')
не отобажается содержимое...
Сам html код в коде страницы есть,а информер выводимый с помощью скрипта не отображается


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