내 웹리스트에서 텍스트 선택을 비활성화하기 위해 javascript를 사용하고 있습니다.
코드는 다음과 같습니다.
<script type="text/JavaScript">
function disableselect(e) {
return false
}
function reEnable() {
return true
}
document.onselectstart = new Function ("return false")
if (window.sidebar) {
document.onmousedown = disableselect
document.onclick = reEnable
}
</script>
내 로컬 호스트에서 : 모든 브라우저 (Firefox, Chrome, IE 및 Safari)가 잘 작동합니다.
내 라이브 사이트에서 : Firefox를 제외하고 모두 괜찮습니다.
내 질문은 다음과 같습니다.
-
누구든지 Firefox가 라이브 사이트와 로컬 호스트에 대해 다르게 작동하는 이유에 대한 제안이 있습니까? 참고 : 자바 스크립트가 활성화됩니다.
-
내 스크립트가 너무 단순 할 수 있으므로 정확히 동일한 결과로 다음 을 시도했습니다.
답변
이 CSS 방법을 사용하십시오.
body{
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
여기에서 동일한 답을 찾을 수 있습니다. CSS를 사용하여 텍스트 선택 강조 표시를 비활성화하는 방법?
답변
드래그 기능을 제공하기 위해 슬라이더 UI 컨트롤을 작성 중입니다. 이것은 사용자가 드래그 할 때 콘텐츠가 선택되지 않도록하는 방법입니다.
function disableSelect(event) {
event.preventDefault();
}
function startDrag(event) {
window.addEventListener('mouseup', onDragEnd);
window.addEventListener('selectstart', disableSelect);
// ... my other code
}
function onDragEnd() {
window.removeEventListener('mouseup', onDragEnd);
window.removeEventListener('selectstart', disableSelect);
// ... my other code
}
startDrag
귀하의 DOM에 바인딩 :
<button onmousedown="startDrag">...</button>
모든 요소에서 텍스트 선택을 정적으로 비활성화하려면 요소가로드 될 때 코드를 실행합니다.
window.addEventListener('selectstart', function(e){ e.preventDefault(); });
답변
JavaScript의 경우 다음 기능을 사용하십시오.
function disableselect(e) {return false}
document.onselectstart = new Function (return false)
document.onmousedown = disableselect
선택을 활성화하려면 다음을 사용하십시오.
function reEnable() {return true}
원하는 곳 어디에서나이 기능을 사용하십시오.
document.onclick = reEnable
답변
다음과 같은 html 페이지가있는 경우 :
<본체 onbeforecopy = "거짓 반환" ondragstart = "거짓 반환" onselectstart = "거짓 반환" oncontextmenu = "거짓 반환" onselect = "document.selection.empty ()" oncopy = "document.selection.empty ()">
모든 이벤트를 비활성화하는 간단한 방법이 있습니다.
document.write(document.body.innerHTML)
당신은 html 컨텐츠를 얻었고 다른 것들을 잃었습니다.
답변
하나는 또한 사용할 수 있으며 모든 브라우저에서 정상적으로 작동하며 자바 스크립트가 필요합니다.
onselectstart = (e) => {e.preventDefault()}
예:
다른 하나의 js 대안, CSS 지원을 테스트하고 userSelect
, 또는 MozUserSelect
Firefox에 대해 비활성화합니다 .
let FF
if (CSS.supports("( -moz-user-select: none )")){FF = 1} else {FF = 0}
(FF===1) ? document.body.style.MozUserSelect="none" : document.body.style.userSelect="none"
Select me!
순수한 CSS, 동일한 논리. 경고 규칙은 모든 브라우저로 확장해야합니다. 이것은 장황 할 수 있습니다.
@supports (user-select:none) {
div {
user-select:none
}
}
@supports (-moz-user-select:none) {
div {
-moz-user-select:none
}
}
<div>Select me!</div>
답변
이 텍스트를 복사하고 이전에 넣기 </body>
function disableselect(e) {
return false
}
function reEnable() {
return true
}
document.onselectstart = new Function ("return false")
if (window.sidebar) {
document.onmousedown = disableselect
document.onclick = reEnable
}