7

我通过在 IE 中调试仔细观察了它;IE 确实设置了document.referrer如果我提交表单或单击任何链接,但是当我使用IEjavascript window.location重定向到另一个页面时。 did not set document.referrer

4

5 回答 5

7

信息:Internet Explorer 在不安全的情况下不发送引用标头

在 Internet Explorer 4.0 和更高版本中从一个文档链接到另一个文档时,如果链接是从 HTTPS 页面到非 HTTPS 页面,则不会发送 Referer 标头。当链接来自非 HTTP(S) 协议(例如 file://)到另一个页面时,Referer 标头也不会被发送。

微软

于 2014-03-01T06:29:04.640 回答
6

尝试这个

<script type="text/javascript" >            
function redirect(url) {
    if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){
        var referLink = document.createElement('a');
        referLink.href = url;
        document.body.appendChild(referLink);
        referLink.click();
    } else {
        location.href = url;
    }
}
</script>

资源

于 2012-12-03T10:22:34.450 回答
1

最简单的解决方案是您可以使用 window.opener.location.href,它适用于所有浏览器。

于 2013-06-25T15:00:43.807 回答
1

当您尝试在弹出窗口或使用 window.location 发送引荐来源网址时,IE 不支持引荐来源网址。您可以通过多种方式发送引荐来源网址。但是,如果您尝试在服务器端获取它,如果通过 JS 弹出窗口更改位置或在使用 IE 时更改 JS 中的位置,因为 IE 内置安全问题,您将不会拥有它。检查 window 或 window.open 属性。你可以去这里

于 2012-12-03T10:23:26.153 回答
-1

尝试这个:

<script type="text/javascript">
$("#button").click(function(){

        window.open("about:blank", "win_name", "height=370,width=365, top=50, left=90, scrollbars=yes,resizable=no,menubar=no");
        sForm = '<form action="url.php" method="post" target="win_name">';
        sForm += '</form>';
        //alert(sForm);return;
        $(sForm).appendTo('body').submit();
        return;

     });
</script>
于 2015-05-20T05:19:32.900 回答