2014-07-22 1 views
2

가 CSS와 함께 할 수있는 방법이지만, 표준이 아닌 기능입니다 : 자바 스크립트에서 할 수있는 방법이자바 스크립트를 사용하여 사용자가 텍스트를 강조 표시하는 것을 중지하는 방법은 무엇입니까?

::selection { 
    background: transparent; 
} 

::-moz-selection { 
    background: transparent; 
} 

있습니까? ::selection에 대한 자세한 내용은 caniuse에서 확인할 수 있습니다.

+4

확실히 그렇지 않길! – Mathletics

+0

이 CSS 기능에 대해 자바 스크립트를 polyfill로 사용하려고하십니까? 또는 자바 스크립트로 요소의 CSS를 업데이트하는 방법을 알아야합니까? – Brad

+0

내 질문에 대해 미안하다고 생각합니다. JavaScript를 사용하여 동일한 효과를 얻는 방법, 즉 텍스트 강조 표시를 중지하는 방법을 알고 싶습니다. –

답변

0

예, onselectstart 이벤트를 수신하고 취소 할 수 있습니다. Here's an example.

+0

호기심에서 벗어나, 예제에서 "This text is you can"강조 표시하면 끝에서부터 시작됩니다. 위로 스크롤하여 강조 표시 할 수없는 텍스트를 강조 표시 할 수 있습니다. 이를 막을 수있는 방법이 있습니까? 아니면 전체 페이지에 onselectstart를 적용해야합니까? – DasBeasto

+0

전체 페이지와 함께 onselectstart를 사용합니다. – tmcw

0

나는 당신이 JS 솔루션을 원하는 알고 있지만이 CSS 스타일은 모든 주요 브라우저에서 작동합니다 :

disableSelection(document.body); 

작업 :

.nohighlight{ 
    -webkit-touch-callout: none; 
    -webkit-user-select: none; 
    -khtml-user-select: none; 
    -moz-user-select: none; 
    -ms-user-select: none; 
    user-select: none; 
} 
0

밖으로

function disableSelection(target){ 
    if (typeof target.onselectstart!="undefined") // IE 
     target.onselectstart=function(){return false;}; 
    else if (typeof target.style.MozUserSelect!="undefined") // Firefox 
     target.style.MozUserSelect="none"; 
    else // Opera and the others 
     target.onmousedown=function(){return false;}; 
    target.style.cursor = "default"; 
} 

사용량이 시도 jsBin