Rich Text Editor를 만드려는데..
Posted: 2006 01 11 16:29 06
다음 같은 코드가 제대로 안먹는군요.
목적은, textarea인 "editor"를 "i_editor"라는 iframe으로 바꿔치기한 후, designMode를 on하려고 합니다만... 안되는군요.
아래쪽의 "_editor" iframe은 잘 됩니다. (IE와 FF에서.. Opeara는 designMode가 아예 불가인가요?)
처음에는 window.onload=init;을 통해 자동 초기화하려 했으나 안됨을 알고, body onload이벤트를 이용했습니다.(http://mozilla.org/editor/ie2midas.html)
이 경우에 이미 HTML 코드안에 들어있는 iframe("_editor")는 designMode 적용이 잘 됩니다만, DOM으로 생성된 iframe("i_editor")는 designMode 적용이 안되는데 뭐가 잘못된 것인지 봐주시면 감사하겠습니다.
Code: Select all
<script type="text/javascript">
<!--//
//window.onload=init;
var WEdit = new EREdit();
function EREdit() {
this.original = null;
this.originalId = null;
this.newId = null;
this.parent = null;
this.value = null;
this.init = function(objId) {
var obj = document.getElementById(objId);
this.originalId = objId;
this.original = obj;
this.value = obj.innerHTML;
this.parent = obj.parentNode;
obj.style.visibility = "hidden";
this.draw(objId);
}
this.draw = function(objId) {
this.newId = "i_" + objId;
oEl = document.createElement("iframe");
oEl.height = '200px';
oEl.width = '400px';
this.parent.insertBefore(oEl, this.original);
oEl.id = this.newId;
}
}
function initRTE(objId) {
WEdit.init(objId);
document.getElementById('_' + objId).contentWindow.document.designMode='on';
document.getElementById('i_' + objId).contentWindow.document.designMode='on';
}
//-->
</script>
<title>에디터 테스트</title>
</head>
<body onload="initRTE('editor')">
에디터 테스트
<form id="test">
<textarea name="editor" id="editor">sample</textarea>
<iframe name="_editor" id="_editor" />
</form>
아래쪽의 "_editor" iframe은 잘 됩니다. (IE와 FF에서.. Opeara는 designMode가 아예 불가인가요?)
처음에는 window.onload=init;을 통해 자동 초기화하려 했으나 안됨을 알고, body onload이벤트를 이용했습니다.(http://mozilla.org/editor/ie2midas.html)
이 경우에 이미 HTML 코드안에 들어있는 iframe("_editor")는 designMode 적용이 잘 됩니다만, DOM으로 생성된 iframe("i_editor")는 designMode 적용이 안되는데 뭐가 잘못된 것인지 봐주시면 감사하겠습니다.