我有一个<input>,onFocus正在选择文本:

onFocusHandler = (event) => {
  event.currentTarget.select()
}


这在Chrome浏览器中工作正常,但是当我在“设备”模式下查看它时,每次选择文本时,上下文菜单都会显示在顶部,并带有“查找”。是否有其他方法可以选择不执行此操作的文本?

最佳答案

根据Сергей Петрашко的评论,我试了一下:

<Input
  type="number"
  value={value || ''}
  onChange={this.onChangeHandler}
  onFocus={this.onFocusHandler}
  onContextMenu={e => e.preventDefault()}
  onUnfocusHandler={this.onUnfocusHandler}
/>


这样可以防止显示上下文菜单。我还发现,仅使用onClick选择文本也不会显示上下文菜单(在不阻止onContextMenu事件的情况下)。

关于javascript - 如何防止上下文菜单显示在Chrome的设备 View 中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48448765/

10-12 07:08