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