首页 > 解决方案 > 在 React.js 中禁用右键单击?

问题描述

我有以下元素,我想通过禁用右键单击来防止被下载。

<iframe src={TEST + "#toolbar=0"} width="100%" height="800px" 
onMouseDown={(e)=>e.preventDefault()} onContextMenu={(e)=>e.preventDefault()}/> 

不幸的是,当我右键单击时,它仍然会弹出上下文菜单。知道为什么吗?

标签: javascripthtmlreactjs

解决方案


使用组件的contextmenu事件内部componentDidMount()方法。

例如:

componentDidMount() {
  document.addEventListener('contextmenu', (e) => {
    e.preventDefault();
  });
};

这将阻止显示上下文菜单。


推荐阅读