我将iframe的src属性设置为下载URL,然后使用appendChild将iframe添加到页面主体以触发下载。如果下载的URL完全合格,即“http://example.abc.com/download/”,则下载将触发安全栏。如果网址是“http:// example / download /”,则下载将在没有安全栏的情况下完成。
有人可以解释这是怎么发生以及为什么会发生这种情况?我知道当页面试图从不同于页面网址的网址下载文件时,IE8会抛出安全栏,但我不认为这会是挑剔的。此外,当前页面网址是完全合格的,所以我认为我得到的结果将被颠倒。
为了避开安全标语,仅仅删除整个域的一部分是一个很好的解决方案吗?
答案 0 :(得分:1)
避免安全警告的最简单方法是在新窗口中打开下载网址,而不是<iframe>
。
例如:
<a href='//www.example.com/your_download' onclick='init_download(this.href);return false' target='_blank'>Test</a>
function init_download(link) {
window.open(link, '_blank', 'toolbar=0,location=no,directories=0,status=0,scrollbars=0,resizeable=0,width=1,height=1,top=0,left=0');
window.focus();
}