我已尝试过大多数解决方案,通过谷歌搜索限制iframe内的右键点击,但我可以禁用<div></div>
标记的权限,但无法限制iframe窗口内的右键单击。如果有人提出这个过程意味着分享你的想法和解决方案,这有助于我很多。这是我的代码
<html><head>
<script type="text/JavaScript" language="JavaScript">
// http://html-generator.weebly.com/html-right-click-disable-code.html
var tenth = '';
function ninth() {
if (document.all) {
(tenth);
alert("Right Click Disable");
return false;
}
}
function twelfth(e) {
if (document.layers || (document.getElementById && !document.all)) {
if (e.which == 2 || e.which == 3) {
(tenth);
return false;
}
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown = twelfth;
} else {
document.onmouseup = twelfth;
document.oncontextmenu = ninth;
}
document.oncontextmenu = new Function('alert("Right Click Disable"); return false')
</script></head><body>
<div id="Container">
<iframe id="fraDisabled" src="http://www.stackoverflow.com" style="border: medium none;height: 820px;margin-left: -12px;top:55px;
margin: -15px 0 0 0;clip:rect(46px, 1360px, 750px, -65px);position:absolute;width: 1378px;">
</iframe>
</div>
</body></html>
&#13;
答案 0 :(得分:0)
如果iframe位于同一个域中,您可以使用.contents() jQuery方法。
// Grab the iframe document
var iframeEl = $('#iframeID').contents().get(0);
获取iframe元素后,您可以将事件绑定到i:
// Bind event to iframe
$(iframeEl).bind('contextmenu', function(event) {
return false;
});
如果iframe位于不同的域中,由于跨域请求策略,jQuery将不允许它。
答案 1 :(得分:0)
iframe
内的页面可能位于同一个域中。如果您访问iframe
内的其他域的页面,则不建议这样做。
参考链接:Cross Domain Policy
欢呼:)