繁体   English   中英

这是防止用户下载文件时出现IE8安全标语的最佳方法吗?

[英]Is this an optimal way to prevent the IE8 security banner from appearing when the user downloads a file?

我将iframe的src属性设置为下载网址,然后使用appendChild将iframe添加到页面的主体以触发下载。 如果下载的网址是完全限定的网址,即“ http://example.abc.com/download/”,则下载将触发安全栏。 如果url为“ http:// example / download /”,则下载将没有安全栏。

有人可以解释这种情况如何以及为什么发生吗? 我了解到,当页面尝试从不同于页面url的url下载文件时,IE8会抛出安全提示,但是我认为这不会很挑剔。 另外,当前页面的网址是完全合格的,因此我认为获取的结果将被颠倒。

仅切掉整个域的一部分以避免出现安全旗标,这是一个很好的解决方案吗?

避免安全警告的最简单方法是在新窗口而不是<iframe>打开下载URL。

例如:

HTML:

<a href='//www.example.com/your_download' onclick='init_download(this.href);return false' target='_blank'>Test</a>

的JavaScript

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();
}

在JS Bin上查看此示例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM