在大多数浏览器中,可以使用CSS来实现:@H_502_1@
*.unselectable {
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
对于IE <10和Opera,您将需要使用unselectable
希望不可选择的元素的属性。您可以使用HTML中的属性进行设置:@H_502_1@
<div id="foo" unselectable="on" class="unselectable">...</div>
遗憾的是,该属性没有被继承,这意味着您必须在内每个元素的开始标记中放置一个属性<div>
。如果这是一个问题,则可以改用JavaScript为元素的后代递归执行此操作:@H_502_1@
function makeUnselectable(node) {
if (node.nodeType == 1) {
node.setAttribute("unselectable", "on");
}
var child = node.firstChild;
while (child) {
makeUnselectable(child);
child = child.nextSibling;
}
}
makeUnselectable(document.getElementById("foo"));