[JQUERY] 자바 스크립트와 일반 텍스트 선택
JQUERY자바 스크립트와 일반 텍스트 선택
해결법
-
1.
if (window.getSelection) { if (window.getSelection().empty) { // Chrome window.getSelection().empty(); } else if (window.getSelection().removeAllRanges) { // Firefox window.getSelection().removeAllRanges(); } } else if (document.selection) { // IE? document.selection.empty(); }
씨 Y.에 신용
-
2.가장 직접 원하는 기능을 테스트합니다 :
가장 직접 원하는 기능을 테스트합니다 :
var sel = window.getSelection ? window.getSelection() : document.selection; if (sel) { if (sel.removeAllRanges) { sel.removeAllRanges(); } else if (sel.empty) { sel.empty(); } }
-
3.나는 내 자신의 몇 가지 조사를했다. 여기에 내가 쓴이 일을 사용하고있는 기능이다 :
나는 내 자신의 몇 가지 조사를했다. 여기에 내가 쓴이 일을 사용하고있는 기능이다 :
(function deselect(){ var selection = ('getSelection' in window) ? window.getSelection() : ('selection' in document) ? document.selection : null; if ('removeAllRanges' in selection) selection.removeAllRanges(); else if ('empty' in selection) selection.empty(); })();
기본적 대해 getSelection (). removeAllRanges ()는 현재 (IE9 + 포함) 모든 최신 브라우저에서 지원됩니다. 이 명확하게 전진하는 올바른 방법입니다.
호환성 문제를 차지했다 :
아마 재사용이 선택 기능을 마무리하는 것이 좋습니다.
function ScSelection(){ var sel=this; var selection = sel.selection = 'getSelection' in window ? window.getSelection() : 'selection' in document ? document.selection : null; sel.deselect = function(){ if ('removeAllRanges' in selection) selection.removeAllRanges(); else if ('empty' in selection) selection.empty(); return sel; // chainable :) }; sel.getParentElement = function(){ if ('anchorNode' in selection) return selection.anchorNode.parentElement; else return selection.createRange().parentElement(); }; } // use it var sel = new ScSelection; var $parentSection = $(sel.getParentElement()).closest('section'); sel.deselect();
표준이 진화하면 사람들이이 기능을 추가 또는 업데이트 일 수 있도록 나는이 커뮤니티 위키했습니다.
-
4.여기에 있지만 두 줄의 코드에서 허용 대답입니다 :
여기에 있지만 두 줄의 코드에서 허용 대답입니다 :
var selection = window.getSelection ? window.getSelection() : document.selection ? document.selection : null; if(!!selection) selection.empty ? selection.empty() : selection.removeAllRanges();
유일한 removeAllRanges의 존재입니다 내가하지 않습니다 확인 -하지만 AFAIK 중 하나 window.getSelection가 있거나을 document.selection하지만 속성에 대한 .empty 또는 .removeAllRanges 중 하나가없는 어떤 브라우저가 없다.
-
5.window.getSelection ()는 당신이 그것을 조작 할 수있는 몇 가지가있다, 당신은 거기에서, 선택한 텍스트에 액세스 할 수 있습니다 ..
window.getSelection ()는 당신이 그것을 조작 할 수있는 몇 가지가있다, 당신은 거기에서, 선택한 텍스트에 액세스 할 수 있습니다 ..
자세히보기 : 개발자 모질라 DOM 선택을
-
6.마우스 오른쪽 버튼을 클릭하고 텍스트 선택을 방지하기 위해 스크립트에 이것을 추가합니다.
마우스 오른쪽 버튼을 클릭하고 텍스트 선택을 방지하기 위해 스크립트에 이것을 추가합니다.
예외가 VAR '톰'에 추가 할 수 있습니다.
var d=document,om=['input','textarea','select'];; function ie(){if(d.all){(mg);return false;}}function mz(e){if(d.layers||(d.getElementById&&!d.all)){if(e.which==2||e.which==3){(mg);return false;}}}if(d.layers){d.captureEvents(Event.mousedown);d.onmousedown=mz;}else{d.onmouseup=mz;d.oncontextmenu=ie;}d.oncontextmenu=new Function('return false');om=om.join('|');function ds(e){if(om.indexOf(e.target.tagName.toLowerCase())==-1);return false;}function rn(){return true;}if(typeof d.onselectstart!='undefined')d.onselectstart=new Function('return false');else{d.onmousedown=ds;d.onmouseup=rn;}
from https://stackoverflow.com/questions/3169786/clear-text-selection-with-javascript by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] BR에 jQuery를 변환 줄 바꿈 (nl2br에 해당) (0) | 2020.10.29 |
---|---|
[JQUERY] 자바 스크립트를 통해 이미지를로드하는 동안 스피너를 표시하는 방법 (0) | 2020.10.29 |
[JQUERY] Base64로 이미지 변환 (0) | 2020.10.29 |
[JQUERY] 요소 jQuery를 함께 표시되는 경우 감지 [중복] (0) | 2020.10.29 |
[JQUERY] 어떻게 jQuery를 버전이로드되는 것을 확인? (0) | 2020.10.29 |