更改对象中的按钮操作

时间:2018-01-17 07:22:47

标签: javascript jquery html

我正在尝试更改Firefox PDF网络查看器中的按钮操作/更改按钮。它可以吗? 问题一步一步:

1.我在我的网站上添加了pdf:

<div>
    <object id="testpdf" data="pdfFile.pdf" type="application/pdf" height="800px" width="100%">
       <p>This browser does not support PDFs. Please download the PDF to view it: <a href="/pdf/sample-3pp.pdf">Download PDF</a>.</p>
    </object>
</div>

在firefox pdf web viewer中加载正常。

  1. 加载时我想更改其中的打印按钮 - 删除标准打印操作并添加我的操作(运行“myProtocol:///pdfFile.pdf”或启动流程“AcroRdr32 / p pdfFile.pdf” - 通过Adobe Reader运行打印或以任何其他方式通过Adobe Reader开始打印(除了下载并手动运行打印))。
  2. 有可能吗? firefox Web查看器的演示位于https://mozilla.github.io/pdf.js/web/viewer.html

    提前谢谢

    修改 我试过这样做:

    if (document.readyState === 'complete') {
        if (("testpdf").readyState === 'complete') {
            document.getElementById("print").outerHTML = '<button onclick="location.href=\'icprint://C:/pdfFile.pdf\'" id="print" class="toolbarButton print hiddenMediumView" title="Drukowanie"><span class="print_label">Drukuj</span></button>';
        };
    };
    

    但它不起作用,我访问的更深层的ID是#testpdf

1 个答案:

答案 0 :(得分:0)

应该可以,我在Firefox-Inspector(F12)中找到了print-Button。 Firefox-Inspector shows print button

您可以更改按钮的标题和onClick:

const ele = document.getElementById('print');
ele.title = 'Drukowanie';
ele.onclick = function() { window.location.href='icprint://C:/pdfFile.pdf'; }

你可以访问C:?

=&GT;像这样的东西,如果你使用jquery(我还没有测试过):

if (document.readyState === 'complete') {
    if ($('#testpdf').readyState === 'complete') {
        const ele = document.getElementById('print');
        ele.title = 'Drukowanie';
        ele.onclick = function() { window.location.href='icprint://C:/pdfFile.pdf'; }
    }
}