我通过在IE中调试来仔细观察它;如果我提交表单或点击任何链接,但是当我使用document.referrer
, IE javascript window.location
重定向到其他网页时,IE确实设置了did not set document.referrer
。
答案 0 :(得分: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>
答案 1 :(得分:5)
信息:Internet Explorer不会在不安全的情况下发送Referer标头
在Internet Explorer 4.0及更高版本中从一个文档链接到另一个文档时,当链接从HTTPS页面到非HTTPS页面时,将不会发送Referer标头。当链接来自非HTTP(S)协议(例如file://)到另一个页面时,也不会发送Referer标头。
答案 2 :(得分:2)
最简单的解决方案是你可以使用window.opener.location.href,它适用于所有浏览器。
答案 3 :(得分:1)
当您尝试在弹出窗口中发送或使用window.location时,IE不支持引荐来源。您可以通过多种方式发送引荐来源。但是如果你试图在服务器端获得它,如果通过JS弹出更改位置或在使用IE时更改JS中的位置,那么你将不会拥有它,因为IE内置安全问题。检查窗口或window.open属性。you can go here
答案 4 :(得分:-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>