google-chrome - 如何在一台机器上且仅在 Chrome 中解决 history.go(-1) 故障
问题描述
history.go(-1) 在不同域的 iFrame 中无效,但在另一台机器上的 chrome 中有效。
给定一个带有来自不同域的 iFrame 的起始页。还有一个 FirstIFramedPage.html,其中包含指向不同域中的 SecondIFramedPage 的链接。当我单击带有 onClick="window.history.go(-1)" 的后退按钮时,它不起作用。
但是,它在我测试过的所有其他浏览器中以及在具有相同版本 Chrome 的另一台机器上确实具有预期的效果(将框架导航回 FirstIFramedPage.html)。chrome:版本 66.0.3359.181(官方构建)(64 位)
我在这里有一个完整的工作示例:https ://github.com/jimlesch/ChromeIFrameHistoryFail readme.txt 包含有关如何重现此问题的说明。
我试过的:
- 以隐身模式运行。
- 禁用扩展。
- 使用来自同一域的 iframe(按预期工作,但在我的场景中不可能)
- 卸载并重新安装 Chrome。
- 安装 Chrome Beta 以查看它的行为是否不同(我在 5 上仍然失败)
- 查看 chrome://tracing (无法确定它的正面或反面)
我正在寻求有关如何进一步隔离此问题的帮助,因为我无法在另一台具有相同版本 chrome 的 Windows 10 机器上重现它。感谢您提供的任何帮助。
解决方案
看来这是在“站点隔离”的现场试验中引入的 chrome 错误。这些现场试验适用于 10% 的稳定版本(以及 90% 的 beta 版本)。通过在“站点隔离试用退出”中选择“退出”,我能够恢复到预期的行为。此设置位于:chrome://flags/#enable-site-per-process。
另请参阅此重复错误以获得更丰富的讨论:bugs.chromium.org/p/chromium/issues/detail?id=845923
推荐阅读
- c - Gtk3 - 未解决的包含
- unity3d - 使用 MRTK 交互时设置螺旋运动
- sql-server - jdbc模板和分页
- arm - 使用内在函数有效地对 ARM NEON 向量的低部分进行操作
- c# - 读取特定字符和后字符之间的字符串
- python - discord.py 重写中的错误:discord.ext.commands.errors.MissingRequiredArgument:问题是缺少的必需参数
- javascript - 无法在 Jquery 中保存获取的数据
- python - 如何使用 Python 中的某些键来选择字典?
- android - 如何动态设置 RazorPay 密钥?
- regex - 如何创建正则表达式以在前面有字母或另一个“*”时转义“*”(但前面没有数字)