이 름 : 바다아이
|
조회수 : 10778
짧은 주소 : https://www.bada-ie.com/su/?541591811732
좀더 자세한 항목은 여기 를 참고하세요...
키 누를 때마다 텍스트 창에도 입력됩니다.
바로바로 적용되는 것도 있고 스페이스나 글짜 하나 더 넣으면 그때그때 들어갑니다.
최종적으로 form 넘길 때는 다 들어갑니다.
퍼온 예제입니다. 근데 firefox 에서 문제가 있길래 대충 소스 조금 덧붙였습니다.
웹에디터 만드는 것은 원리는 같지만 방법은 여러가지 입니다. 또 브라우저 호환성도 생각해야 하구요..
생각보다 웹에디터가 노가다입니다. 글자색, 링크 등등 같은 것은 레이어 만들어서 기능 또 만들어야 합니다.
제일 좋은 방법은 이미 잘 만들어진 것을 가져다 쓰는 것입니다. ^^;
그냥 원리만 알아두세요... 이미 있는 것을 또 만들 필요는 없습니다..
그때그때 가져다 쓰시고 없는 뭔가가 필요할 때 그 뭔가를 아래 원리 참고해서 만드시면 됩니다.
아래는 예제입니다. 흘러가는 줄기만 보세요...
실제 새로 만든다면 구조부터 작업 할 노가다가 엄청납니다. -.-;
<HTML><HEAD><TITLE>웹에디터 예제5</TITLE><metahttp-equiv="Content-Type"content="text/html; charset=utf-8"><SCRIPTlangauge="javascript">functionhtmledit(excute, values){
if (values == null) {
dhtmlframe.document.execCommand(excute);
} else {
dhtmlframe.document.execCommand(excute, "", values);
}
}
functiondatasubmit(){
form.comment.value = dhtmlframe.document.body.innerHTML;
}
</SCRIPT></HEAD><BODY><formname=formmethod=postaction="test.php"><Ahref="javascript:htmledit('justifyleft');">좌측정렬</a><Ahref="javascript:htmledit('justifycenter');">중심정렬</a><Ahref="javascript:htmledit('justifyright');">우측정렬</a><Ahref="javascript:htmledit('insertorderedlist');">점표시목록</a><Ahref="javascript:htmledit('insertunorderedlist');">숫자목록</a><Ahref="javascript:htmledit('outdent');">들여쓰기줄이기</a><Ahref="javascript:htmledit('indent');">들여쓰기늘이기</a><Ahref="javascript:htmledit('createlink', 'http://aa');">링크</a><BR> 글꼴 >
<Ahref="javascript:htmledit('fontname','굴림');">굴림</a><Ahref="javascript:htmledit('fontname','궁서');">궁서</a> 글크기 >
<Ahref="javascript:htmledit('fontSize',2);">2</a><Ahref="javascript:htmledit('fontSize',3);">3</a><Ahref="javascript:htmledit('fontSize',4);">4</a><Ahref="javascript:htmledit('bold');">볼드</A><Ahref="javascript:htmledit('italic');">이탤릭</A><Ahref="javascript:htmledit('underline');">언더라인</A><P><IFRAMEid="dhtmlframe"name="dhtmlframe"></IFRAME><P><TEXTAREANAME="comment"ROWS="3"></TEXTAREA></P><P><inputtype="submit"value="확인"Onclick="datasubmit()"></form><SCRIPT>functionInitEditable() {
var editor = document.getElementById("dhtmlframe");
var editorDoc = editor.contentWindow.document;
var editorBody = editorDoc.body;
// turn off spellcheckif ('spellcheck'in editorBody) { // Firefox
editorBody.spellcheck = false;
}
if ('contentEditable'in editorBody) {
// allow contentEditable
editorBody.contentEditable = true;
} else { // Firefox earlier than version 3if ('designMode'in editorDoc) {
// turn on designMode
editorDoc.designMode = "on";
}
}
}
window.onload = function() {
InitEditable();
document.getElementById("dhtmlframe").contentWindow.document.onkeypress = gogo;
document.getElementById("dhtmlframe").contentWindow.document.onkeyup = gogo;
document.getElementById('dhtmlframe').contentWindow.document.onkeydown = gogo;
}
functiongogo() {
form.comment.value = dhtmlframe.document.body.innerHTML;
}
</SCRIPT></BODY></HTML>
http://www.i-nux.co.kr
출처 : http://www.mins01.com/home/board/board.php?type=read&b_id=tech&page=42&b_idx=240
|
|
번 호
카테고리
제 목
이름
조회수
Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 firefox 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ Ubuntu + GoLang + PostgreSQL + Mariadb ]
서버위치 : 오라클 클라우드 춘천 실행시간 : 0.06051 초 to webmaster... gogo sea. gogo sea.