右键单击元素时禁用当前单词的选择

Posted

技术标签:

【中文标题】右键单击元素时禁用当前单词的选择【英文标题】:Disable selection of current word when right-clicking on an element 【发布时间】:2018-04-23 19:27:07 【问题描述】:

我已启用右键单击元素,如下所示:

<div class=my-content (contextmenu)="openContextMenu($event)">

在我的处理程序中,我添加了必要的命令来告诉它不要打开浏览器的上下文菜单:

openContextMenu( $event ) 
  // do my thing, and then:

  $event.preventDefault();
  $event.stopPropagation();
  return false;

不幸的是,浏览器会选择我点击的单词,这会破坏用户体验。 Safari 和 Chrome 都会出现这种情况。

如何告诉浏览器不要突出显示我点击的单词?

【问题讨论】:

为什么不直接使用带有特定上下文菜单标识符的html5属性contextmenu 单词会在单击时突出显示吗?看看这个,如果你觉得有用的话。 ***.com/questions/7018324/… 【参考方案1】:

你可以只使用 ::selection css 伪元素

::-moz-selection 
    color: black; /* your text colour */
    background: transparent;


::selection 
    color: black;
    background: transparent;

在 ::selection 之前,您可以像这样指定 css 选择器:

p::selection 

【讨论】:

【参考方案2】:

一种方法是禁用对特定元素或类的文本选择。为此,您可以使用简单的 CSS。 May Be This Can Help You

【讨论】:

以上是关于右键单击元素时禁用当前单词的选择的主要内容,如果未能解决你的问题,请参考以下文章

使用 JavaScript 如何禁用右键单击或单击滚动条时如何在右键单击窗口中删除检查元素选项

当我右键单击一个项目时,如何防止 ListBox 选择它?

单击复选框时禁用剑道日期选择器

JavaScript:通过双击禁用文本选择

禁用列表视图中的元素选择?

java - 如何获取Java Swing列表中未选择的右键单击项目?