JavaScript和JavaScript的区别是什么

window.location.href = window.location.href

and

window.location.reload()

功能呢?


当前回答

在我们的例子中,我们只是想在webview中重新加载页面,由于一些原因,我们找不到原因! 我们尝试了网络上几乎所有的解决方案,但无法使用location.reload()或其他解决方案,如window.location.reload(), location.reload(真实),…!

以下是我们的简单解决方案:

只需要使用< a >标签和空的“href”属性值,就像这样:

< a href="" ...>Click Me</a>

(在某些情况下,你必须在点击目标时使用“返回true”来触发重载)

更多信息请看这个问题: 空href是否有效?

其他回答

如前所述,当url中存在散列(#)时修改href将不会重新加载页面。因此,我使用this来重载它,而不是正则表达式:

if (!window.location.hash) {
    window.location.href = window.location.href;
} else {
    window.location.reload();
}

在研究IE的一些异常行为时遇到了这个问题,特别是IE9,没有检查旧版本。似乎

window.location.reload();

结果在刷新,空白整个屏幕一秒钟,其中

 window.location = document.URL;

更快地刷新页面,几乎察觉不到。

做一点更多的研究,并与fiddler的一些实验,似乎window.location.reload()将绕过缓存和从服务器重新加载,无论你是否传递布尔值,这包括再次获得所有的资产(图像,脚本,样式表等)。如果你只想让页面刷新HTML,这个窗口。Location =文档。URL将返回得更快,流量更少。

不同浏览器之间的不同之处在于,当IE9使用重载方法时,它会清除可见页面,并从头重新构建它,而FF和chrome则会等到获得新的资产,并在它们不同时重新构建它们。

在我们的例子中,我们只是想在webview中重新加载页面,由于一些原因,我们找不到原因! 我们尝试了网络上几乎所有的解决方案,但无法使用location.reload()或其他解决方案,如window.location.reload(), location.reload(真实),…!

以下是我们的简单解决方案:

只需要使用< a >标签和空的“href”属性值,就像这样:

< a href="" ...>Click Me</a>

(在某些情况下,你必须在点击目标时使用“返回true”来触发重载)

更多信息请看这个问题: 空href是否有效?

区别在于

window.location = document.URL;

如果在URL中有一个散列(#)(后面有或没有一些东西),将不会重新加载页面,而

window.location.reload();

将重新加载页面。

window.location。href,这拯救了我的生活在webview从Android 5.1。在Android的这个版本中,页面不使用location.reload()重新加载。