게시판 본문 ASP, ASP.NET, IIS & Script - Read Only
re: 전체선택관련 |
---|
작성자: 송원석
작성일시: 2011-05-23 09:03,
조회수: 5,696
|
안녕하세요? 송원석입니다. ^_^
말씀하신 자바스크립트들은 그리 흔히 쓰이지는 않아서 저도 구현해 본 경험이 적습니다. 일단 제가 알고 있는 부분에 대해서만 말씀드리도록 하겠습니다. 단, 저 역시도 지금부터 말씀드릴 내용들에 대해서는 IE 에서만 작업을 해봤으며, 같은 IE 내부에서도 버전에 따라서 어떤 특성들이 있을지는 장담드릴 수 없다는 점을 감안하시고 참고하시기 바랍니다. 먼저 Ctrl+A를 구현하는 가작 쉬운 방법은 IE의 내부 명령어를 호출하는 방법이 가장 간단한 방법일 것 같네요. 즉, 사람이 Ctrl+A를 누르거나, 메뉴에서 '모두 선택'을 선택한 것과 동일한 동작을 하도록 만들면 됩니다. 먼저, 다음 문서를 참고해보시기 바랍니다. http://msdn.microsoft.com/en-us/library/aa752577(v=VS.85).aspx 위의 문서는 IE에서 제공해주는 execCommand 메서드의 명세입니다. 이 메서드를 이용하면 메뉴의 명령을 실행시킬 수 있습니다. 더 다양한 사례는 구글링을 해보시면 되고요, Ctrl+A와 같은 효과는 다음의 코드로 얻을 수 있습니다. document.execCommand("SelectAll", true); 이 코드에서 사용되는 "SelectAll"이 전체 선택을 하는 명령어인데요, 이런 명령어들의 목록은 다음 문서에서 살펴볼 수 있습니다. http://msdn.microsoft.com/en-us/library/ms533049(v=VS.85).aspx 그리고, 특정 문장을 선택하는 방법은 저도 일괄적으로 설명드리기는 조금 곤란하구요. 기본적인 내용만 말씀드려보도록 하겠습니다. 다음은 IHTMLDocument2 인터페이스 명세인데요, 여기를 보면 selection 이라는 속성이 있는데, 여기에 현재 선택된 영역의 정보들이 담겨 있습니다. 이 속성을 비롯하여 몇 가지 기능들을 이용하셔야 합니다. http://msdn.microsoft.com/en-us/library/aa752574(v=VS.85).aspx 가령 이 게시판에서도 완전히 같지는 않지만, 비슷한 기능을 사용하고 있습니다. 글을 작성할 때, 코드 부분을 선택한 다음, "CDOE" 버튼을 클릭하면 해당 영역이 PRE 태그로 감쌓여집니다. 이 작업에 대한 코드는 다음과 같습니다. function Set_useCode() { var objTxtRange = null; if (document.selection.type.toUpperCase() == "NONE") { alert("코드 블럭 설정을 위한 content 의 텍스트 영역이 선택되지 않았습니다. "); doc.content.focus(); } else { doc.useHTMLChk.src = "/image/cubeboard/bHTMLon.jpg"; doc.useHTML.value = 1; objTxtRange = document.selection.createRange(); if (objTxtRange.parentElement().tagName.toUpperCase() == "TEXTAREA") { objTxtRange.text = "\n<pre class=\"EC_PRE_TAG\">\n" + objTxtRange.text + "\n</pre>\n"; } else { alert("코드 블럭 설정을 위한 content 의 텍스트 영역이 선택되지 않았습니다. "); doc.content.focus(); } objTxtRange = null; } } 벌써 7, 8년은 족히 된 코드라 어수선합니다만, 이런식으로 스크립트에서 선택 영역에 대한 처리를 수행할 수 있습니다. 감사합니다. |
IP 주소: 203.226.5.240
|
전체 2,095 건의 게시물,
84 페이지로 구성된
ASP, ASP.NET, IIS & Script 게시판의
1 페이지입니다.
게시물 | ||||
---|---|---|---|---|
2,208 | 2011-05-25 | 12,650 | ||
2,207 | 2011-05-27 | 5,849 | ||
2,206 |
이석환 |
2011-05-20 | 124 | |
2011-05-23 | 5,696 | |||
2,204 |
이석환 |
2011-05-17 | 130 | |
2,203 | 2011-05-17 | 5,492 | ||
2,202 |
동영상 탑재 사이트 구축 [1] |
2011-05-12 | 5,357 | |
2,201 | 2011-05-12 | 5,296 | ||
2,200 | 2011-04-24 | 5,598 | ||
2,199 | 2011-04-25 | 5,181 | ||
2,197 |
김종식 |
2011-03-30 | 228 | |
2,196 | 2011-03-31 | 5,283 | ||
2,195 |
gosuzzang |
2011-03-23 | 290 | |
2,194 | 2011-03-24 | 5,726 | ||
2,193 |
이석환 |
2011-03-23 | 253 | |
2,192 | 2011-03-24 | 5,644 | ||
2,191 |
이석환 |
2011-03-18 | 345 | |
2,190 | 2011-03-19 | 5,988 | ||
2,189 | 2011-03-21 | 5,295 | ||
2,188 |
이석환 |
2011-03-21 | 258 | |
2,187 | 2011-03-21 | 5,754 | ||
2,186 |
질문 |
2011-03-18 | 311 | |
2,185 | 2011-03-18 | 7,678 | ||
2,184 |
이석환 |
2011-03-11 | 345 | |
2,183 | 2011-03-14 | 8,737 |