我的以下代码在Chrome和IE中工作正常。用户单击锚标记并执行代码,然后在新标签中使用url blob呈现pdf文件:http://localhost:57389/5aee262a-8bc9-4943-b67f-7b76aeef4b99

vme.loadAttachment = function (attachment) {
    taskService.getAttachmentContent(attachment.Name)
        .then(function (response) {
            var file = new Blob([response], { type: attachment.Type });
            if (window.navigator && window.navigator.msSaveOrOpenBlob) {
                window.navigator.msSaveOrOpenBlob(file);
            }
            else {
                var objectUrl = URL.createObjectURL(file);
                window.open($sce.trustAsResourceUrl(objectUrl), _blank");
            }
       })
};


但是,在Firefox上,新标签页已打开,但会立即自动关闭。知道是什么原因造成的吗?

最佳答案

今天这件事发生在我身上。我有几个不同的VM快照,用于测试不同的“客户端”,但其中有两个快照无法打开PDF-浏览器短暂闪烁并且没有出现PDF。

最后,它是一个广告拦截器(ABP)。只需告诉它忽略网站域,即可使PDF正确显示。

关于angularjs - AngularJS-Firefox无法在新标签页中打开Blob网址,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42548410/

10-12 05:43