不是oEvent.preventDefault(); 在GC工作?触发onmove事件时,我需要阻止选择文本.
编辑:事实证明这很容易......
function disableSelection() { document.onselectstart = function() {return false;} // ie document.onmousedown = function() {return false;} // others } function enableSelection() { document.onselectstart = null; // ie document.onmousedown = null; // others }
之后,在移动事件中没有触发文本选择(即在选择事件上触发 - 即 - 确实就是!)
-webkit-user-select: none
CSS样式控制是否允许用户选择
元素的文本.
为了完整起见,这涵盖了所有支持的浏览器(IE不被视为Web浏览器):
.no-select { user-select: none; -o-user-select:none; -moz-user-select: none; -khtml-user-select: none; -webkit-user-select: none; }
要通过Javascript完成,只需创建一个类并添加节点的属性.
要使用JavaScript执行此操作:
var el = document.getElementById("myElement"), s = el.style; s.userSelect = "none"; s.webkitUserSelect = "none"; s.MozUserSelect = "none"; el.setAttribute("unselectable", "on"); // For IE and Opera
请注意,对于IE和Opera,该unselectable
属性不会被元素的子元素继承,因此el
还需要将所有子元素都unselectable
设置为"on"
.