Javascript 禁止在拖动鼠标时选择文本
当我按下鼠标左键并将其拖动到屏幕上时,我有以下javascript代码来执行我的函数:Javascript 禁止在拖动鼠标时选择文本,javascript,firefox,javascript-events,Javascript,Firefox,Javascript Events,当我按下鼠标左键并将其拖动到屏幕上时,我有以下javascript代码来执行我的函数: function MyFunc(e) { // I copied this part from another SO question e.preventDefault(); e.stopPropagation(); e.cancelBubble = true; e.returnValue = false; // This should cancel out all def
function MyFunc(e)
{
// I copied this part from another SO question
e.preventDefault();
e.stopPropagation();
e.cancelBubble = true;
e.returnValue = false;
// This should cancel out all default actions, should it not?
return false;
}
document.addEventListener('mousemove', MyFunc false);
这应该做的是,当鼠标在屏幕上拖动时(当按下左键时),它会阻止文本(或任何其他元素)被选择。但事实是,它什么也不做。该函数正在执行,我用console.log检查过,但它不会阻止文本选择。
我搞不清楚我到底做错了什么
我现在使用的是:
window.getSelection().removeAllRanges();
这是可行的,并且会集中取消选择,但这是一个相当丑陋的解决方案,我不明白上面的代码为什么不起作用。将此添加到CSS中,用于不希望拖动的元素
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;