需要阻止右键单击PDF Angular 2

需要阻止右键单击PDF Angular 2,angular,typescript,angular6,Angular,Typescript,Angular6,我已经禁用了右键单击我的页面上的每个地方,但只有在我动态生成的pdf上,我无法禁用它 下面是HTML部分 <app-card *ngIf="show"> <embed [src]="Url" type="application/pdf" width="100%" height="1000px" EnableContextMenu='0' > </app-card> 让我们试一下 <script type="text/javascript"&g

我已经禁用了右键单击我的页面上的每个地方,但只有在我动态生成的pdf上,我无法禁用它

下面是HTML部分

<app-card *ngIf="show"> 
    <embed [src]="Url" type="application/pdf" width="100%" height="1000px" EnableContextMenu='0' >
</app-card>
让我们试一下

<script type="text/javascript">
document.onmousedown = disableRightclick;
var message = "Right click not allowed !!";
function disableRightclick(evt){
    if(evt.button == 2){
        alert(message);
        return false;    
    }
}
</script>

document.onmousedown=禁用右键单击;
var message=“不允许右键单击!!”;
功能禁用右键单击(evt){
如果(evt.button==2){
警报(信息);
返回false;
}
}
参考链接

第二条路

<html>
<body oncontextmenu= "return false;">
Right Click not allowed on this page
</body>
</html>

此页面上不允许右键单击
参考链接

最后,你可能的解决方案


这些只是一个建议。

您可以使用主机属性禁用应用程序卡组件

host属性用于将事件绑定到要创建的所有属性 那个特殊的类组件

在应用程序卡装饰器中,您需要定义主机属性

selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ],
 host: {
    '(contextmenu)': 'disableClick($event)'
  }
然后,您需要在app card类中定义方法

private disableClick(e){
      e.preventDefault();
  }

检查此示例:

能否在stackbiltiz.com中添加代码尝试在嵌入html元素或其父元素中添加oncontextmenu=“return false;”。尝试不工作OK brother让我尝试返回您未工作我已禁用整个页面,但我想禁用pfdNo结果,但感谢您的努力。这是禁用右键单击文本,我需要禁用pdf
private disableClick(e){
      e.preventDefault();
  }