window.location 在 Safari 上调用弹出空对话框
Posted
技术标签:
【中文标题】window.location 在 Safari 上调用弹出空对话框【英文标题】:window.location call popup up empty dialog on safari 【发布时间】:2011-02-10 18:33:14 【问题描述】:在一个网页上,我试图将浏览器重定向到同一站点上的另一个页面。 代码非常简单:
window.location = "/path1/path2"
在 safari - windows 和 mac - 一个只包含文本的消息框
"http://domain.com"
出现了。
我尝试了不同的方法来指定它:location.href、windows.assign(...) ...并且它们都有相同的行为。
你们有没有看到这个?您对此有解决方案吗?
谢谢。
【问题讨论】:
【参考方案1】:看看这个question。你应该使用:
location.href = 'url';
【讨论】:
这也不起作用:(我尝试了不同的方法,但都失败了 location="url" 或 location.href="url" 在我曾经尝试过的所有浏览器上都可以正常工作【参考方案2】:感谢大家的帮助。
我发现了问题。在调用链中的某处设置 window.location 之前,一个函数会发出 ajax 请求。
似乎由于某些更改,请求现在比以前需要更长的时间。因此,如果在 ajax 请求期间更改了位置,则会出现空消息框。
咪咪。
【讨论】:
【参考方案3】:您应该显示完整的代码。 例如这个错误的代码
<a href="javascript:window.open()">Click</a>
点击时会显示 [OBJECT]。
如果你的脚本只是
<script>
window.location='someurl';
</script>
然后还有其他事情发生 - 我刚刚在我的 Mac 上的 Safari 中测试了这个
<script>
window.location='http://www.google.com'
</script>
【讨论】:
以上是关于window.location 在 Safari 上调用弹出空对话框的主要内容,如果未能解决你的问题,请参考以下文章
移动 Safari:frame.src 与 window.location
Safari浏览器在window.location之后停止执行js
关于 Safari 浏览器不支持 location [ window.location.href window.open()] 跳转问题的解决方案