0

我正在尝试在 Fancybox 2 中打开一个 30 页的 PDF 文档,该 PDF 文档是使用 TCPDF 生成的,然后需要显示在屏幕上,以便用户可以打印或保存它。当脚本完成时,fancybox 加载图形显示永恒并且没有 iframe 打开。它在 Firefox 中有效,但在 Chrome 或 IE 中无效。

如果我将它打开的页数减少到 23,我还尝试先创建 pdf 并保存到服务器,然后使用下面的 javascript 打开它。

delivery_pdf.php 是创建 TCPDF 的脚本,然后将其保存为 delivery2.pdf

$.get('delivery_pdf.php',
{
    type:0,
    this_id:new_tick,
    delivery_run_date:dd
},function(data)
{
    $.fancybox.open(
    {
        type: 'iframe',
        href: 'delivery2.pdf'
    });
    $("#loader").hide();

});

通过将链接直接放在浏览器栏中打开文件,已创建 PDF。

先感谢您。

4

1 回答 1

1

据报道,Chrome 和 IE 会出现这种行为,最快的解决方法是禁用 fancybox iframe preload,因此请尝试:

$.get('delivery_pdf.php', {
    type: 0,
    this_id: new_tick,
    delivery_run_date: dd
}, function (data) {
    $.fancybox.open({
        type: 'iframe',
        href: 'delivery2.pdf',
        iframe: {
            preload: false
        }
    });
    $("#loader").hide();
});

您还可以在此处查看报告的问题和解决方法https://github.com/fancyapps/fancyBox/issues/579以供进一步参考。

于 2013-06-17T07:24:14.420 回答