所以,近期由於Chrome的更新阻止使用JavaScript直接被打開一個數據URL:「不允許導航頂部框架來傳輸數據的URL」,我有一些代碼,我需要修改。我有一個使用mPDF生成PDF的ajax調用,將它發回64位 - 並且應該在新選項卡中打開。這一直工作。然而,由於這個問題,我現在要做的是在新窗口中將該PDF加載到iFrame中以避免該錯誤。這是我有什麼:谷歌瀏覽器 - 在iframe PDF下載不工作
$('.print-order-pdf').click(function(){
var orderNumber = $(this).attr('order')
var data = {
pdfnonce: pdfAjax.pdfnonce,
action: 'getOrderPDF',
orderNumber: orderNumber,
}
var win = window.open('', '_blank');
$.post(pdfAjax.ajax_url, data, function(return_url){
win.document.write("<iframe id='pdf' src='"+ return_url +"'></iframe>");
win.document.write("<style> html, body{ overflow:hidden; margin:0; } #pdf{ width:100%; height: 100%; }</style>");
});
});
(這是一個wordPress Ajax調用)。無論如何 - 這一切都可以運行,並且打開PDF的新頁面。問題是 - 在Chrome中,作爲PDF控件一部分出現的下載鏈接不再有效。我可以打印,旋轉,但不能下載文件。我已經在Firefox中進行了測試,沒有觸發下載的問題。用於PDF窗口的Chrome控制檯完全不顯示任何錯誤。有任何想法嗎? Chrome中是否有特定的內容阻止從iFrame內下載?爲什麼?有沒有辦法解決它?
非常感謝。
我不能重現此(60穩定和62金絲雀,MAC)。 –
嗯......好吧有趣 - 我用60和穩定以及和有其他人在這裏嘗試 - 他們看到了同樣的問題。所以,我觸發這個標籤的方式肯定是錯的 - 但我不知道是什麼。附件是檢查員的截圖。控制檯中沒有任何東西,這就是嵌入和下載圖標的樣子。這裏有什麼東西嗎? https://www.screencast.com/t/WlqHqJTJ50K – JBoss