Я пытаюсь открыть PDF-файл, который я получаю в виде строки в формате base64, на новой вкладке. Он открывается в новом окне без какого-либо содержимого, но когда я «проверяю элемент» на странице, я получаю PDF-файл отлично.
Вот мой код -
var pdfWindow = window.open("about:blank", "_blank");
pdfWindow.document.write("<iframe width='100%' height='100%' src='data:application/pdf;base64, " + encodeURI(payload)+"'></iframe>");
Кроме того, я хочу открыть PDF-файл в новой вкладке, а не в новом окне. При открытии в новом окне PDF открывается отлично.
Чтобы открыть в новом окне, я использую этот код -
let pdfWindow = window.open("", '_blank', 'dependent=yes,locationbar=no,scrollbars=no,menubar=no,resizable,screenX=50,screenY=50,width=850,height=800')
pdfWindow.document.write("<iframe width='100%' height='100%' src='data:application/pdf;base64, " + encodeURI(payload)+"'></iframe>");



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Это старый вопрос, но он может быть полезен другим: Проблема заключается в тегах ширины и высоты iframe. Вместо использования процентов используйте определенные пиксели. Это решит проблему.
<iframe width='600px' height='600px' ...> </iframe>