IE bug之location.href没有referer

使用js实现跳转一般会用

location.href="www.google.com";

这样在一般的浏览器中可以在服务器端正常的获取referer,但是如果是IE浏览器就不正常了,解决方法是在IE中create一个a标签然后触发它的click事件。

//define for all browsers
function goto(url){
  location.href = url;
}

//re-define for IE
if(isIE){
  function goto(url){
    var referLink = document.createElement('a');
    referLink.href = url;
    document.body.appendChild(referLink);
    referLink.click();
  }
}

参考:http://webbugtrack.blogspot.com/2008/11/bug-421-ie-fails-to-pass-http-referer.html

你可能感兴趣的:(location)