innerHTML+= не работает в Opera
Всех с наступившим. Поставлен в тупик Оперой.
Через JS программно создаю div c содержимым innerHTML, которое может дополняться. Где-то так:
of=document.createElement("div");
of.style.position="absolute";
of.style.left="13px";
of.style.top="136px";
of.style.width="760px"
of.style.height="682px";
of.style.backgroundImage="url('http://myserv.com/img/view_fon.png')";
of.id="of";
document.body.appendChild(of);
of.innerHTML="<font color=\"#007CB0\" style=\"cursor:default; position:absolute; left:403px; top:10px; width:222px; height:25px; font-size:14pt; font-family:Arial; \" >Информация</font>";
//делает что-то ещё
of.innerHTML+="<textarea style=\"position:absolute; left:7px; top:200px; \" >!!!!!!!</textarea>";
of.innerHTML+="<textarea style=\"position:absolute; left:7px; top:230px; \" >???????</textarea>";
так вот именно в Опере of.innerHTML+= не выполняется (ошибки тоже не возвращает). Ещё так пробовал var ih="<font color=\"#007CB0\" style=\"cursor:default; position:absolute; left:403px; top:10px; width:222px; height:25px; font-size:14pt; font-family:Arial; \" >Информация</font>"; ih+="<textarea style=\"position:absolute; left:7px; top:200px; \" >!!!!!!!</textarea>"; ih+="<textarea style=\"position:absolute; left:7px; top:230px; \" >???????</textarea>"; of.innerHTML=ih; - отображает так само, только первую часть, ту что в <font> Или так:
var newDiv = document.createElement('div');
newDiv.innerHTML="<textarea style=\"position:absolute; left:7px; top:200px; \" >!!!!!!!</textarea>";
of.appendChild(newDiv);
но и это не помагает. В остальных браузерах работает (ё-моё, IE и тот меня понимает!), а тут ни в какую. Совсем запутался... |
Да вроде всё работает:
<head>
<script>
window.onload=function(){
of=document.createElement("div");
of.style.position="absolute";
of.style.left="13px";
of.style.top="136px";
of.style.width="760px"
of.style.height="682px";
of.style.backgroundImage="url('http://myserv.com/img/view_fon.png')";
of.id="of";
document.body.appendChild(of);
of.innerHTML='<font color="#007CB0" style="cursor:default; position:absolute; left:403px; top:10px; width:222px; height:25px; font-size:14pt; font-family:Arial;" >Информация</font>';
of.innerHTML+='<textarea style="position:absolute; left:7px; top:200px;" >!!!!!!!</textarea>';
of.innerHTML+='<textarea style="position:absolute; left:7px; top:230px;" >???????</textarea>';
}
</script>
</head>
<body>
</body>
|
да, это работает.
разобрался. в одной из строчек я вставлял ифрейм в div: of.innerHTML+='<iframe...' если это поставить в самый конец, тогда всё показывает нормально |
| Часовой пояс GMT +3, время: 07:23. |