JS скрипт замены html
Всем привет, задался вопросом, а как сделать через js замену html блока(строки)?
К примеру есть блок <div class="block">, а нужно чтоб через js заменялось к примеру на <div class="block2"></div><div class="block"> Всем за ранее спасибо! |
HTML, загруженный браузером - это уже не строка, а DOM - объектная модель документа.
|
candro,
да это легко вообще сделать. Например <html> <head> <meta charset="windows-1251"> <style> .block1{background: red} .block2{background: green} </style> </head> <body> <div id="wrap"> <div class="block1">block1</div> <div class="block2">block2</div> </div> <button id="but">push</button> <script> but=document.querySelector("#but") wrap=document.querySelector("#wrap") but.onclick=function(){ var re=/<div.*block1.*\/div>/, block=wrap.innerHTML, block=block.replace(re, "<div class='block2'>block2</div>") wrap.innerHTML=block } </script> </body> </html> Может я чо не так понял? |
krutoy, твой код не кроссбраузерный.
|
Не работает в IE8
|
А все из-за тупого косяка твоего.
|
danik.js,
А что именно? У меня нет IE:) |
krutoy, а нехер выеживаться. Нужно var писать при объявлении переменных.
|
danik.js,
Я не пойму, какая связь? Там в первоначальном варианте div был не закрыт. Может ты первый вариант проверял? Если нет, то хотелось бы, все-таки, понять логику и специфику его поведения. |
Эм, кроссбраузерность не важна, просто есть потребность, чтоб этот DOM элемент <div class="block">, заменялся на <div class="block2"></div><div class="block"> к примеру. Просто нужно сделать замену этого элемента через JS.
Самое главное, происходить это должно без нажатия куда либо. |
Часовой пояс GMT +3, время: 05:10. |