No puedo deshabilitar las acciones Copiar, Cortar, Pegar y Hacer clic derecho para PDF dentro de iframe
mi código para el iframe
<iframe id="pdfViewer" src="url-pdf.pdf#toolbar=0&navpanes=0&scrollbar=0" title="Title PDF" frameborder="0" scrolling="auto" class="no-right-click no-cut-copy-paste" height="400px" width="100%" style="border: 30px solid #EEE"></iframe>He intentado muchas soluciones, pero ninguna funciona para mí.
Alguna solución que he intentado usar
1. CSS :
.no-cut-copy-paste { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }2. JavaScript
var pdfViewer = document.getElementById('pdfViewer'); pdfViewer.window.eval('document.addEventListener("contextmenu", function (e) {e.preventDefault();}, false)'); $(document).on('cut copy paste', '.no-cut-copy-paste', function(e) { e.preventDefault(); return false; });3. jQuery
$('#pdfViewer').attr('contextmenu', 'return false')Pero hay trabajo para todas las páginas de mi aplicación, pero el clic derecho todavía está activo en iframe
document.oncontextmenu = function() { return false; }; <html> <head> <title>Disable Context Menu</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"> </script> <script type="text/jscript"> function injectJS(){ var frame = $('iframe'); var contents = frame.contents(); var body = contents.find('body').attr("oncontextmenu", "return false"); var body = contents.find('body').append('<div>New Div</div>'); } </script> </head> <body > <iframe id="myiframe" width="528" height="473" onload="injectJS()" ></iframe> </body> </html>