js禁止document element对象选中文本实现代码

代码如下:

// 参数 obj: 要禁止选中文本的元素的jquery对象 
// 参数 enabled: true, 可选中; false, 不可选中 
function setSelectable(obj, enabled) { 
if(enabled) { 
obj.removeAttr("unselectable").removeAttr("onselectstart").css("-moz-user-select", "").css("-webkit-user-select", ""); 
} else { 
obj.attr("unselectable", "on").attr("onselectstart", "return false;").css("-moz-user-select", "none").css("-webkit-user-select", "none"); 
} 
}

原理如下

ie下,可以通过设置事件 selectstart 的处理函数(return false;) 来禁止选中文本
ff和chrome下,可通过css来控制
至于,unselectable的属性,可看做是一种补充手段,使得尽可能适应更多的浏览器。

相关推荐