这是一个大胆的说法,但由于 Chrome 的最新更新,他们对 window.location.replace 的解释似乎是错误的。我有一个在 iframe 中加载内容的网站,以便能够在顶部添加工具栏。可以禁用此工具栏。当工具栏被禁用时,会设置一个 cookie。每次加载页面时都会检查 cookie,如果 cookie 存在,则用户将直接重定向到通常在 iframe 中加载的站点,如下所示:
if($.cookie("noframe")==true)
window.location.replace='http://www.amazingjokes.com/';
这在 Chrome 的最新更新之前效果很好。如果人们禁用了 iframe,他们会被直接发送到该站点,然后单击“返回”将他们发送到我的主页。
不再...
人们现在被重定向回加载框架的页面,他们被重定向回的 cookie 集——在这种情况下——amazingjokes.com。这是 window.location.replace 的行为现在等同于:
window.location.href='http://www.amazingjokes.com/';
但这不是我正在寻找的行为。我可以设置另一个 cookie 来跟踪重定向,但这会产生越来越多的开销。而“替换”选项应该涵盖这一点。有解决方法吗?还是应该将此报告为 Chrome 的错误?