在取消或打印对话框之前,Chrome Print对话框不会执行单独的JavaScript功能

时间:2017-12-07 20:05:22

标签: javascript google-chrome printing

我正在尝试对也执行window.print()的点击事件执行跟踪调用。我已经先跟踪了跟踪调用,但在对话框关闭之前它不会执行。

Firefox和IE按顺序执行所有操作。这个问题似乎是Chrome独有的。 我已经安排了一些文本,它们以正确的顺序显示,但在我关闭对话框之前,网络不会显示跟踪调用。

任何人都知道怎么解决这个问题?

<script>
function printTrack(){
    _satellite.track('something');
    window.print();
}
</script>

<button id="print-button" onclick="javascript:printTrack()">Print</button>

1 个答案:

答案 0 :(得分:0)

我能够通过使用承诺来解决这个问题:

function printTrack(pn) {
        return new Promise(function (resolve, reject) {
            resolve(_satellite.setVar('pdf_name', pn), 
            _satellite.track('pdf_print'));
        });
    }

    printTrack(printName).then(function (result) {
        window.print();
    });