¿Cómo agrego el pdfObject al div dentro de mi HTML? Quiero usar document.querySelector para obtener la identificación del div y luego cargar mi PDF allí
aquí está mi función javascript:
showPDF: function (button) { let url = document.getElementById("URLinput").value; button.style.display = "none"; let pdfObject = document.createElement("OBJECT"); pdfObject.setAttribute("data", url); pdfObject.setAttribute("id", "pdf"); let a = document.querySelector(selector)!= null; document.a.appendChild(pdfObject); },y aquí está mi HTML:
<head> <link rel="stylesheet" href="../css/pdfviewer.css"> </head> <body> <h1>PDF Viewer</h1> <input id="show" type="button" value="PDF anzeigen" onclick="HM.PDFViewer.showPDF(this)"/> <input id="URLinput" type="text" value="/pdf/Doku.pdf"/> <script type="text/javascript" src="/js/pdfviewer.js"></script> <div id="selector"></div> <p> test </p> </body>La funcionalidad de EMBED se ha estandarizado en HTML5 y se utiliza para proporcionar contenedores para complementos. El principal problema con EMBED es su dependencia de los complementos que se cargan, lo que se ha vuelto menos común hoy en día. En su lugar, puede usar IFRAME (que puede incluir páginas HTML y posiblemente otros medios) u OBJECT .
Versión modificada de su código:
showPDF: function (button) { let url = document.getElementById("URLinput").value; button.style.display = "none"; let pdfObject = document.createElement("OBJECT"); pdfObject.setAttribute("data", url); pdfObject.setAttribute("id", "pdf"); document.body.appendChild(pdfObject); }Esto elimina la dependencia de tener que usar complementos de navegador o bibliotecas JS externas y, al mismo tiempo, es ampliamente compatible .
El navegador moderno es un procesador de texto (en lugar de un procesador de texto) que no es un editor de What You Serve Is What You Get (WHSIWYG) ya que la configuración la establecen los 7 mil millones de usuarios potenciales. así que aquí, en comparación, están Edge a la izquierda y Firefox a la derecha con mi configuración básica (no se usan bloqueadores adicionales).
Donde <Incrustar> <iFrame> y <Objeto> al menos <iFrame> (Recomendado por W3) es más consistente dando una descarga tanto en Edge como en FireFox, al igual que lo haría una descarga A Href=tradicional.
Como dije, cada navegador puede bloquear diferentes aspectos, por lo que en este, los 3 están bloqueados de manera uniforme, por lo que puedo descargar el que desee.
Solo para confirmar por qué no puede hacer cumplir la vista de un usuario de un PDF en su editor, aquí hay otra vista del navegador de PDF: