我如何可以暂时使用JavaScript禁用文本选择?
-
23-08-2019 - |
题
这是一个有点特殊的问题,所以我会得到正确的地步。
我工作的一个短期和简单的拖放和Web应用程序的一部分掉落常规,虽然拖放位正常工作,该网站的操作,因为浏览器仍然没有默认期间去所有丑陋tastic操作和工程上文本选择。
我已经尝试了几个解决方案主要涉及返回从鼠标按下虚假或点击事件,虽然他们在某些浏览器中禁用文本选择,他们也似乎完全禁用鼠标松开事件,败坏了“滴”位脚本和离开该博浮动图标挂在mouse--不好玩。
我真的不希望文本选择是完全消失了,我只是想表明,浏览器...不这样做的同时拖动,如果是有道理的。因为我知道,受影响的区域(有涉及I帧),我可以很容易的属性应用到受影响的元素,等等。如果需要,我可以张贴代码,但我在寻找更多的通用解决方案的。由于这只是一个美观的东西,我在寻找,在大多数浏览器上运行的修复,这是不是真的那么重要。
谢谢!
解决方案
在W3C浏览器,则可以调用preventDefault
对象上的event
方法。该IE当量是设置returnValue
到false
。
function stopDefault(e) {
if (e && e.preventDefault) {
e.preventDefault();
}
else {
window.event.returnValue = false;
}
return false;
}
编辑:刚刚重新阅读的问题,你可能还需要防止在处理实际拖动部分代码的默认操作,而不是只在初始鼠标按下或点击
其他提示
据我所知,拖动的元素必须被定位在下鼠标指针的其他元素。如果它会使用鼠标指针移动时,它防止页面上的任何选择。
不隶属于 StackOverflow