我有一个纯 html/javascript 应用程序(无 Phonegap),与 native Android 应用程序和 WebView 一起使用。
在 JavaScript 部分中,在某些情况下我必须重新加载当前页面。对于我的旧手机和 Android 4.3,我刚刚使用过:
document.location = "index.html"
对于我的新手机(Android 5),这似乎不再起作用了。它仍然可以更改页面,即当我当前正在查看“books.html”时,我可以使用上面的代码导航到“index.html”。但是当我想重新加载当前正在查看的同一页面时,什么也没有发生。
我用chrome调试器调试了WebView,没有错误,没有警告,什么也没有。在我电脑上的 Chrome 中一切正常。
请注意:
我尝试了 Rajesh 提到的解决方案。不幸的是,它并不能开箱即用。
我遇到了这个问题: https://bugs.chromium.org/p/chromium/issues/detail?id=327728
需要在 webView 上设置一个 WebViewClient 才能使其工作:
webView.setWebViewClient(new WebViewClient());
最佳答案
文档.位置
方法不会重新加载页面,它本质上会进入 session 历史记录并单独访问页面。
某些浏览器实现可能会限制向 session 历史记录添加并排重复条目,从而阻止重新加载页面。
重新加载页面的最佳方法是
document.location.reload()
关于javascript - WebView 在 document.location 更改时不再重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38114722/