Jag har en text i en div som jag vill ska växla till editeringsläge (wysiwyg) när jag klickar på texten.
Allt fungerar perfekt förutom ett väldigt konstigt problem. Det fungerar så här:
1. Plocka ut texten i diven
2. skapa en iframe som kan göras editerbar
3. Lägg till texten i iframen så att man kan editera texten.
För att kunna utföra steg 3 så måste jag först hämta det objekt i iframen som texten ska ligga i. Detta fungerar ENBART om jag skriver ut något först (se alert i koden nedan)!!
Har någon sett detta förut??
Jag lägger inte ut all kod eftersom det är ett så omfattande system men här är de kritiska delarna:
Kod:
editor.js:
moduleObject = document.getElementById(id);
text = moduleObject.innerHTML;
editableArea = '<iframe src="editableArea.html" id="id"></iframe>';
moduleObject.innerHTML = editableArea;
if (window[id])
{
alert("TODO: make this work without alert!");
window[id].document.getElementById(id+'_textArea').innerHTML = text;
}
else
{
alert("TODO: make this work without alert!");
document.getElementById(id).contentDocument.getElementById('id').innerHTML = text;
}
---
editableArea.html:
<html>
<body contenteditable onLoad="document.designMode='on';" id="id_textArea">
</html>