我在MVC Web应用程序的IFrame中显示了文档内容。内容不得复制和打印。我试图使用两个函数style =“pointer-events:none;”禁用右键单击。对于iframe,oncontextmenu =“return false”可以正常工作。
但是,右键单击时,将显示带有“查看框架源”,“查看源”的弹出窗口。我该如何限制呢!
另外,如何限制打印屏幕选项。我知道还有其他人可以从中捕获数据的实用程序。但是客户端希望限制打印屏幕选项。


<script lang=JavaScript>
    function clickIE() {
        if (document.all) {
            return false;
        }
    }
    function clickNS(e) {
        if (document.layers || (document.getElementById && !document.all)) {
            if (e.which == 2 || e.which == 3) {
                return false;
            }
        }
    }
    if (document.layers) {
        document.captureEvents(Event.MOUSEDOWN);
        document.onmousedown = clickNS;`enter code here`
    }
    else {
        document.onmouseup = clickNS;
        document.oncontextmenu = clickIE;
    }
    document.oncontextmenu = new Function("return false")


<body   oncontextmenu="return false" onkeydown="if ((arguments[0] || window.event).ctrlKey) return false" >
<div  id="div1" style="background-color:Red; height:120px">


  <iframe id="id1" src="" name="I1" scrolling="no" height="100%" width="100%" marginwidth ="0" marginheight="0" onload="disableContextMenu();" style="pointer-events:none;"  />



</div>

请任何帮助表示赞赏。

最佳答案

为了禁用右键单击菜单,您可以使用以下代码段:

document.oncontextmenu = function() {
    return false;
};

我制作了一个JSFiddle来显示效果。

关于javascript - 如何禁用对IFRAME的右键单击,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26583033/

10-11 13:34