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

JavaScript010

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

js页面刷新

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

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

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

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

jQuery

one() 方法为被选元素附加一个或多个事件处理程序,并规定当事件发生时运行的函数。

当使用 one() 方法时,每个元素只能运行一次事件处理器函数。

实例

$("p").one("click",function(){

$(this).animate({fontSize:"+=6px"})

})

可以考虑使用setTimeOut

你这个代码的问题,我分析,是因为每次页面刷新以后,你的定时器id都会被重新赋值为undefined

而你在页面加载时就会执行你自定义的定时器代码,代码内判断定时器id的条件语句永远不会成立,所以是不会清除定时器的

总的来说,http无状态造成的

如果一定要使用setinterval,你需要区分刷新页面后和刷新前的状态,这恐怕需要服务端帮忙了额