0

当我通过在 gridview 中按 shift 键选择一堆行时,默认文本选择(深蓝色)与我的自定义行选择颜色混合。

如何禁用 Web 应用程序中的默认文本选择。

4

3 回答 3

2

这对我来说可以在 FF 和 IE 中禁用“选择”:

// jQuery Solution
$(document).mousedown(function (e)
{
   return false;
});

$(document).bind("selectstart", function (e)
{
   return false;
});

如果您不使用 jQuery,这里是普通的 javascript 解决方案。

// Vanilla Javascript Solution
function attachEvent(element, eventName, handler)
{
    if(element.addEventListener)
    {
        element.addEventListener(eventName, handler, false);
    }
    else
    {
        element.attachEvent("on" + eventName, handler);
    }
}

attachEvent(document, "mousedown", function (e)
{
  if(window.addEventListener)
  {
     e.preventDefault();
  }
  return false;
});

attachEvent(document, "selectstart", function (e)
{
  return false;
});
于 2010-07-29T14:33:26.847 回答
0

当您单击某处然后 shift+m​​ousedown 在其他地方时会发生浏览器选择,因此您需要取消第二次 mousedown。为此,您需要添加

return false;

到您的onmousedown事件处理程序。

于 2010-07-29T13:25:05.050 回答
0

你的意思是你的文字被选中?

您必须在选择期间禁用文本选择,请参阅此处如何操作

于 2010-07-29T13:29:40.580 回答