如何防止文本和/或页面内容双击html和javascript中的突出显示?

时间:2009-10-14 20:31:33

标签: javascript html

有点奇怪的问题,但我正在为万圣节聚会做一场比赛。用于快速和肮脏开发的Javascript / HTML。 (这将在投影仪上全屏显示,并使用Wiimote进行鼠标控制)。这就是我正在使用的,我的问题并不是要引用对我的代码选择的批评。除了一件事,它的效果很好。

基本上,它是一个射击场/导弹命令式游戏,你需要在屏幕上移动时点击或拍摄物体。我有onmousedown处理程序点击对象。但是,当您双击(即快速激发)时,如果您错过了对象,则会突出显示对象以及同一div中包含的其他对象。为了解决这个问题,在mousedown处理程序中,我设置焦点/选择一个不在页面中的文本框。这在某种程度上起作用,因为对象不会保持突出显示,但它们在失去焦点之前会短暂突出显示。

简而言之,是否有更好的方法可以防止双击在我的页面上产生这种影响?

3 个答案:

答案 0 :(得分:2)

在Firefox中,只需让事件返回false即可停止突出显示。 IE有点复杂 - 你必须让元素的'onselectstart'函数返回false。

noHighlightObjects[i].onselectstart = function() {
            return false;
        };

答案 1 :(得分:1)

我相信你应该能够通过停止事件的传播来避免这个问题。这可以通过从鼠标处理程序返回false来实现。

答案 2 :(得分:1)

来自:Prevent text selection after double click

* {
     -moz-user-select: none; // mozilla browsers
     -khtml-user-select: none; // webkit browsers
}