防止拖动鼠标时选择文本
Prevent text selection while dragging a mouse
我有以下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 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;
相关文章:
- 用于选择/文本框操作的JavaScript
- 以编程方式选择文本Mobile Safari
- Firefox输入可以't在选择文本时滚动
- 如何在javascript中取消选择文本框
- 如何在html中打印选择文本
- SVG元素——处理和选择文本
- 选择文本并添加到本地存储
- 选择“p文本jquery”
- 为什么火狐在我更改 innerHTML 时会选择文本
- 根据换行符选择文本
- 如何按从当前单词到段落中该句子(.)结尾的范围选择文本
- 单击按钮时选择文本
- JavaScript 触发器事件在 Android 上选择文本
- .val() 选择文本而不是值字符串,当网页动态编辑源 html
- 为什么不用特殊字符替换选择文本,以及如何删除此特殊字符
- 使用链接多次选择文本
- 使用jQuery在焦点上选择文本框是't在移动浏览器中工作
- Safari存在文本输入问题,用户输入时会选择文本,导致文本丢失
- Bootstrap下拉菜单-仅复选框不选择文本
- 使用.on的多个下拉菜单选择文本仅适用于第一个下拉菜单