利用js实现进入页面首先执行刷新操作,且只刷新一次

JavaScript013

利用js实现进入页面首先执行刷新操作,且只刷新一次,第1张

js页面刷新

让页面进行刷新,可以使用 location.reload() 方法,但是这种方法会让页面一直不断的刷新。

这是因为当页面加载完成以后,我们让它刷新一次,那么浏览器就会重新向服务器请求数据,界面会重新加载,然后,加载完成又调用了location.reload()方法,这样就陷入了死循环,一直处于请求然后刷新的状态。

为了解决这样的问题,我们使用下面这种方式:

利用以上方法,在每次进入这个页面的时候,都会绕过浏览器缓存,重新向服务器获取数据。

网页中用户的表单填写到一半,或者ajax请求发送期间,如果用户刷新浏览器可能会导致数据保存失败。需要阻止页面刷新,这时可以通过监听页面window.onbeforeunload事件函数来处理。

window.onbeforeunload = function(e) {

var dialogText = 'Dialog text here'

e.returnValue = dialogText

return dialogText

}

不过chrome不支持自定义显示文字,固定为

“要重新加载该网站吗?

系统可能不会保存您所做的修改”

而firefox和safari就会正常使用return value里面的文字

参考:

-- https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload#Browser_compatibility

1:首先要有思路,比如要计数,那一定要做的就是记着上次的个数,然后在原有基础上加一;

2:如何实现,在页面加载后实现,有哪些方法?

思路1:当浏览器加载完后执行一个方法来处理计数?

浏览器加载完数据:window.onload()

思路2:如可获取上次页面打开的个数?

window给我们提供了一种方法:window.name 当前window的名称;

实现:

刷新: