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, время: 23:21. |