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

Обсуждение вопросов клиентского программирования.

Модератор: Duncon

Ответить
Croner
Сообщения: 5
Зарегистрирован: 26 май 2007, 20:46

Есть 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]
Аватара пользователя
Oscar
Сообщения: 963
Зарегистрирован: 29 май 2004, 13:44
Откуда: Мюнхен (рожден в Киеве)
Контактная информация:

id = ...
temp = document.getElementById(id).innerHTML;

document.getElementById(id).innerHTML = "<a ....>" + temp + "</a>";
Serj
Сообщения: 7
Зарегистрирован: 18 мар 2007, 12:00
Контактная информация:

...А лучше та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);
}
Аватара пользователя
Oscar
Сообщения: 963
Зарегистрирован: 29 май 2004, 13:44
Откуда: Мюнхен (рожден в Киеве)
Контактная информация:

Serj писал(а):...А лучше таk
Serj, чисто из любопытства, можно поинтересоваться? чем лучше? ;)
Serj
Сообщения: 7
Зарегистрирован: 18 мар 2007, 12:00
Контактная информация:

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