Печать PDF в формате PDF в iframe вызывает ошибку

Нужна помощь

Мне нужно загрузить PDF в iframe, щелкнув, а затем вызовите диалог печати на нем.

У меня такой код:

$('.print').click(function () {
   var iframe = '<iframe src="test.pdf" id="print-iframe" name="print-iframe"></iframe>';
   $('body').append(iframe);
   window.frames["print-iframe"].focus();
   window.frames["print-iframe"].print();
});

Он отлично работает в Chrome. Но в Firefox у меня такая ошибка: Error: Permission denied to access property 'print'.

Как я могу обойти это? Спасибо!

Ответ 1

В последних версиях Firefox (с 19) вы должны отключить прослушиваемый и собственный просмотрщик PDF (pdf.js) в about:config. Установите для свойства pdfjs.disabled значение true, и вы увидите окно печати, отображаемое с помощью script.

Если запускается загрузка, установите для свойства plugin.disable_full_page_plugin_for_types значение application/pdf.

Ответ 2

Это ошибка Src в iframe с полным url src= "domain.com/file.pdf"

вы можете попробовать

$('.print').click(function () {

  var domain = location.protocol + "//" + location.host;
  var iframe = '<iframe src="'+domain+'/test.pdf" id="print-iframe" name="print-iframe"></iframe>';
  $('body').append(iframe);
  window.frames["print-iframe"].focus();
  window.frames["print-iframe"].print();
});