【问题标题】:window.history.go(-1) not working in iOS HomeScreen App [duplicate]window.history.go(-1)在iOS HomeScreen App中不起作用[重复]
【发布时间】:2014-03-04 17:02:30
【问题描述】:

所以我试图将用户重定向回 iPhone HomeScreen 应用程序的历史记录中的一级,但它只是由于某种原因没有触发。

当前代码如下window.history.go(-1)

我也尝试了各种其他版本window.history.back()history.go(-1),但还没有运气。我不知道如何实现 pushState,所以我还没有尝试过这种方法,但是主屏幕应用程序的内容是多么糟糕,这很烦人。

至少您可以使用 Safari 进行调试。

【问题讨论】:

  • 通过 Safari 访问 Web 应用是否有效?拨打电话时是否遇到任何错误?你能发布事件连接和调用window.history.go的代码吗?
  • 我建议您使用像 historyjs 这样的库,因为它旨在为 html5 历史记录提供一致的跨浏览器界面。
  • 嗯...这是什么类型的应用程序?我真的加载了我自己的主屏幕应用程序,当我在控制台中输入它们时,window.history.back()window.history.go(-1) 都工作了。

标签: javascript jquery ios web-applications


【解决方案1】:

您可以调试移动 safari,但不幸的是您需要 mac。

如果没有,试试这个:

  1. 确保您的代码在桌面 safari 上正常运行并且没有错误;
  2. 通过添加alert("history() called") 代替history(-1) 代码来检查您是否确实在拨打电话;
  3. 它是否在具有导航到另一个页面的默认行为的链接中?如果是这样,在 history() 调用之后,您需要一个 event.preventDefault() 或至少一个 return false;

【讨论】:

  • e.preventDefault() history.go(-1) 帮了我大忙。
【解决方案2】:

尝试类似:

<a href="javascript:history.go(-1)">Go back</a>

【讨论】:

  • 它对我有用,谢谢
猜你喜欢
  • 2017-11-01
  • 2020-12-22
  • 1970-01-01
  • 2017-02-28
  • 1970-01-01
  • 2016-02-05
  • 2016-02-04
  • 2012-09-25
  • 1970-01-01
相关资源
最近更新 更多