JS禁止选中文本方法

if (typeof(element.onselectstart) != "undefined") {        
    // IE下禁止元素被选取        
    element.onselectstart = new Function("return false");        
} else {
    // firefox下禁止元素被选取的变通办法        
    element.onmousedown = new Function("return false");        
    element.onmouseup = new Function("return true");        
} 

IE下有onselectstart这个方法,通过设置这个方法可以禁止元素文本被选取。而firefox下没有这个方法,但可以通过css或一种变通的办法解决:

使用CSS:

div {
      -moz-user-select:none;
      -webkit-user-select:none;
      user-select:none;    
}

另外一种方法是: 

ie:document.selection.empty()
 ff:window.getSelection().removeAllRanges()
兼容的写法:

 

window.getSelection ? window.getSelection().removeAllRanges() : document.selection.empty(); 

 

这种方法不但不影响拖放对象的选择效果,还能对整个文档进行清除.

 

文章来自:http://www.cnblogs.com/pigtail/archive/2012/09/11/2680462.html

 

posted @ 2016-06-26 15:25  webnote  阅读(794)  评论(0编辑  收藏  举报