在Firefox看起来很好,Chrome和IE的文本仍然可以选择,有没有办法解决这个问题?代码取自另一个问题(我现在找不到),所以它可能已过时?Javascript非选择性文本在Chrome/IE中不工作
// Prevent selection
function disableSelection(target) {
if (typeof target.onselectstart != "undefined") //IE route
target.onselectstart = function() { return false }
else if (typeof target.style.MozUserSelect != "undefined") //Firefox route
target.style.MozUserSelect = "none"
else //All other route (ie: Opera)
target.onmousedown = function() { return false }
}
用于代码:
disableSelection(document.getElementById("gBar"));
为什么你想这样做?即使让它起作用,再次使文本可选也与禁用javascipt或查看源代码一样简单。只有真正阻止选择的方式是提供图像,这会导致各种可访问性问题,并隐藏搜索引擎中的文本。 – tdammers 2010-11-30 10:05:09
我知道有人会问这个问题,我完全意识到这些问题,但这不是为了保护数据,它只是为了提高我正在制作的Web应用程序的性能,所以当用户拖放元素时其中包含的文本不会开始被选中,并使应用程序行为奇怪。 – 2010-11-30 10:08:31
我最近有一个像这样的问题,并解决了它与jQuery升级:) – sje397 2010-11-30 10:17:29