2010-05-28 4 views
5

Bu sürükle ve bırak araçlarının sayfadaki sürükleme öğesinde ve diğer öğelerindeki metin seçimini nasıl iptal ettiğini merak ediyorum. IE8'de çalışan aşağıdaki kodu denedim (metni seçemez) ancak Firefox'ta çalışmıyor (hala metni seçebilir).Firefox'ta fareyi sürüklerken metin seçimini nasıl önleyebilirim?

<!DOCTYPE html> 
<html> 
<body> 
    <p>Hello World</p> 
    <script type="text/javascript"> 
    document.onmousemove = function() { 
     return false; 
    } 
    </script> 
</body> 
</html> 
+0

bakınız: http://stackoverflow.com/questions/69430/is-there-a-way-to-make-text-unselectable-on-an-html-page – CMS

cevap

8

Veya, Moz için IE8 çözümüne biçime benzer:

document.body.style.MozUserSelect="none" 
3

kaydırma çubuğunu sürükleyerek ederken seçilen ediliyordu sayfadaki yatay kaydırma çubuğunu ve metin vardı bir durum yoktu. Kaydırma başlangıç ​​işlevim kapalıyken gövdeye "seçilemez" bir sınıf eklemek için jQuery'yi kullandım ve kaydırma durdurma işlevim yürütüldüğünde sınıfı kaldırdım. Bunun gibi:

function startDrag(event){ 
    $('body').addClass('unselectable'); 

    // start drag code 
} 

function stopDrag(event){ 
    $('body').removeClass('unselectable'); 

    // stop drag code 
} 

Ve bu, CSS belgesinde görünmeyen sınıfın neye benzediğidir.

.unselectable { 
    -webkit-touch-callout: none; 
    -webkit-user-select: none; 
    -khtml-user-select: none; 
    -moz-user-select: none; 
    -ms-user-select: none; 
    user-select: none; 
}