兼容IE的javascript跳转(可传递referer)

window.location方式跳转页面,会造成IE下跳转到的页面无法获取到跳转来源(referer)。stackoverflow中评论里贴出了一段代码是在页面的body中增加了一个a标签,然后通过javascript点击此a标签来解决ie的此问题,但俺觉着通过UserAgent来判断IE不是很靠谱(众所周知的国内各种加壳版本浏览器),正好记着以前看到过一个IE的特性就是.click是IE特有的一个属性。修改了下。stackoverflow的脚本就有了现在俺在用的这个版本:

function goTo(url) {

var a = document.createElement("a");

if(!a.click) { //only IE has this (at the moment);

window.location = url;

return;

}

a.setAttribute("href", url);

a.style.display = "none";

document.body.appendChild(a);

a.click();

}

BTW:此脚本必须放在body标签后,否则会报一个document.body无法找到的错

添加新评论 »