如何禁用网页上的文本选择

时间:2012-09-07 09:34:03

标签: javascript html css

我正在努力使网页非常原生。 如何删除选择,选择网页中的所有属性?

6 个答案:

答案 0 :(得分:70)

禁止使用CSS

选择每个元素
body {
  -webkit-user-select: none;
     -moz-user-select: -moz-none;
      -ms-user-select: none;
          user-select: none;
}

Chrome,Safari,Firefox,IE 10和iOS设备均支持此功能。有关MDN page的更多信息。

修改:如果您希望在Firefox中保持<input><textarea>可选,请添加:

input,
textarea {
     -moz-user-select: text;
}

使用jQuery

禁用上下文菜单
$(document).on("contextmenu", function (event) { event.preventDefault(); });

答案 1 :(得分:6)

使用此代码

body, html{     
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;  
}

答案 2 :(得分:3)

此JavaScript将禁用内容的选择,复制和粘贴 但是如果用户将页面保存到本地机器,他们将能够用你的代码做任何他们想要的东西。

//disable cut copy past
var message = "";
function clickIE() { if (document.all) { (message); return false; } }
function clickNS(e) {
    if(document.layers || (document.getElementById && !document.all)) {
        if (e.which == 2 || e.which == 3) { (message); return false; }
    }
}
if (document.layers)
{ document.captureEvents(Event.MOUSEDOWN); document.onmousedown = clickNS; }
else { document.onmouseup = clickNS; document.oncontextmenu = clickIE; }
 document.oncontextmenu = new Function("return false")


//for disable select option
document.onselectstart = new Function('return false');
function dMDown(e) { return false; }
function dOClick() { return true; }
document.onmousedown = dMDown;
document.onclick = dOClick;

答案 3 :(得分:0)

您可以通过在body标签中添加属性来禁用oncontextmenu =“return false;

<body oncontextmenu="return false;">

答案 4 :(得分:-1)

这可以帮到你

<div onselectstart="return false;" style="-moz-user-select: none;">

答案 5 :(得分:-1)

element_name{
  -webkit-touch-callout: none; 
  -webkit-user-select: none;
  -khtml-user-select: none; 
  -moz-user-select: none;
  -ms-user-select: none; 
   user-select: none;
 }