我遇到过一些使用以下类型的引荐来源黑客的代码,通过 IE 中的 Javascript 将引荐来源信息传递到弹出窗口:
var targetName = "linkTarget";
_win = window.open("", targetName, 'width=800,height=480,resizable=yes,status=yes,location=yes,toolbar=no');
var _link;
if (!document.getElementById("referrerHackLink")) {
_link = document.createElement('a');
_link.id = "referrerHackLink";
document.body.appendChild(_link);
}
else {
_link = document.getElementById("referrerHackLink");
}
_link.target = targetName;
_link.href = url;
_link.click();
http://webbugtrack.blogspot.com/2008/11/bug-421-ie-fails-to-pass-http-referer.html
有趣的是,当我尝试对某些 URI(包括本地主机)使用该方法时,IE9 和 IE10 会模糊弹出窗口并导航到主窗口中的目标 URL。
你可以在这里找到一个例子: http://jsfiddle.net/geoffreymoller/JKXzk/
关于为什么本地主机版本可能会像那样更改弹出窗口和目标信息有什么想法吗?
最佳答案
_win = window.open("", targetName, 'width=800,height=480,resizable=yes,status=yes,location=yes,toolbar=no');
我认为 IE 中的窗口名称仅限于 _self、_top、_blank 等名称...
因此,任何与预期列表不同的名称都可能被视为 _self
关于javascript - IE Popup 定位问题与 Javascript referrer hack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14149512/