Location 对象的三个方法可以刷新页面
属性 | 描述 | IE | F | O |
---|---|---|---|---|
assign() | 加载新的文档。 | 4 | 1 | 9 |
reload() | 重新加载当前文档。 | 4 | 1 | 9 |
replace() | 用新的文档替换当前文档。 | 4 | 1 | 9 |
assign定义和用法
assign() 方法可加载一个新的文档。
语法
1 |
location.assign(URL) |
reload定义和用法
reload() 方法用于重新加载当前文档。
语法
1 |
location.reload(force) |
说明
如果该方法没有规定参数,或者参数是 false,它就会用 HTTP 头 If-Modified-Since 来检测服务器上的文档是否已改变。如果文档已改变,reload() 会再次下载该文档。如果文档未改变,则该方法将从缓存中装载文档。这与用户单击浏览器的刷新按钮的效果是完全一样的。
如果把该方法的参数设置为 true,那么无论文档的最后修改日期是什么,它都会绕过缓存,从服务器上重新下载该文档。
replace定义和用法
replace() 方法可用一个新文档取代当前文档。
语法
1 |
location.replace(newURL) |
说明
replace() 方法不会在 History 对象中生成一个新的记录。当使用该方法时,新的 URL 将覆盖 History 对象中的当前记录。
实际使用:
1. 如果不期望用户能后退,使用replace(newURL)
2. 如果不期望使用缓存,使用reload(true)
3. 如果期望可以后退,使用assign(newURL)
附:
可以使用 location.href = newURL; 的方式来刷新页面,这个类似于上面的哪一种行为呢?(好像是assign?)