Страница 1 из 1

Как заменить код html ?

Добавлено: 26 май 2007, 20:51
Croner
Есть html страничка
[HTML]
<html>
...
<div id="1">1111</div>
<div id="2">2222</div>
<div id="3">3333</div>
...
</html>
[/HTML]
Как с помошью Jscript сделать так ?
[HTML]
<html>
...
<div id="1"><a href="http://odin.com">1111</a></div>
<div id="2"><a href="http://dva.com">2222</a></div>
<div id="3"><a href="http://tri.com">333</a></div>
...
</html>
[/HTML]

Re: Как заменить код html ?

Добавлено: 27 май 2007, 13:18
Oscar
id = ...
temp = document.getElementById(id).innerHTML;

document.getElementById(id).innerHTML = "<a ....>" + temp + "</a>";

Re: Как заменить код html ?

Добавлено: 05 июн 2007, 11:48
Serj
...А лучше таk

var links=['http://odin.com','http://dva.com','http://tri.com'];

for(i=0;i<3;i++){
var div=document.getElementById(i+1);
var a=document.createElement("a");
a.href=links;a.innerHTML=div.innerHTML;
div.replaceChild(div.firstChild,a);
}

Re: Как заменить код html ?

Добавлено: 06 июн 2007, 01:10
Oscar
Serj писал(а):...А лучше таk
Serj, чисто из любопытства, можно поинтересоваться? чем лучше? ;)

Re: Как заменить код html ?

Добавлено: 06 июн 2007, 10:06
Serj
Во-первых, ипользование методов работы с DOM делает скрнипт более гибким. Во-вторых, когда ты меняешь свойство innerHTML, ты заставляешь браузер обрабатывать эти изменения изменения, т.е. делать то что можно сделать с помощью методов DOM. Говорить об определенном выигрыше в производительности в таком простом примере не приходится, да собственно в моем коде я тоже использую innerHTML, но если бы это был какой-то ококнчательный вариант, я бы не стал использовать innerHTML. Ну и втретьих я просто довел скрипт до полурабочего состояния. Этим пожалуй он и лучше ;)