Facny box打印回调

时间:2015-08-18 04:02:50

标签: jquery pdf fancybox fancybox-2 pdfviewer

我正在使用fancybox2,我需要在pdf进入打印队列之前添加一些自定义函数意味着我需要fancybox打印回调(比如打印之前,打印之后),有人可以帮助我吗?我尝试了window.print()回调,但是在fancybox打印的情况下这些不起作用,以下是我使用的样本

$(function(){
  var beforePrint = function() {
    alert("BEfore print")
    console.log('Functionality to run before printing.');
  };
  var afterPrint = function() {
    console.log('Functionality to run after printing');
    alert("After print")
  };

  if (window.matchMedia) {
    var mediaQueryList = window.matchMedia('print');
    console.log("Match media ..." + mediaQueryList)
    mediaQueryList.addListener(function(mql) {
      console.log("Mql matches ...."+ mql.matches)
      if (mql.matches) {
        beforePrint();
      } else {
        afterPrint();
      }
    });
  }

  window.onbeforeprint = beforePrint;
  window.onafterprint = afterPrint;
}());

这不适用于fancybox打印,但在我们尝试窗口打印时工作(就像我们使用ctrl + p时)。当我们点击fancybox pdf打印图标时,我需要处理打印回拨,请查看附图enter image description here

以下是firefox截图,看看firefox如何呈现与crhome浏览器不同的花式框pdf,firefox使用pdf viewer。

enter image description here

在谷歌上花了一些时间之后,我发现fancybox在不同浏览器中嵌入pdf呈现方式不同(参见上面附图),firefox使用pdf查看器,chrome使用Adobe的查看器等,必须有一些东西我们可以控制所有pdf打印trhough javascript

0 个答案:

没有答案