我有一个要求,其中有一个java脚本代码,用于调用ajax并在页面加载时将用户日志保存在数据库中。但问题是每次用户刷新页面时代码都会被执行。我想仅在10秒后刷新页面而不是每次刷新页面时才执行该语句。如果在10秒之前刷新页面,我必须停止执行代码流。
答案 0 :(得分:1)
此代码执行所有10秒(或更长时间),由页面重新加载触发:
您需要存储时间(在localStorage中),在重新加载检查时是否现在晚于存储时间+ 10秒:
function store(){
//store time:
now=new Date().getTime();
localStorage.setItem("stored",now);
//your password storing
}
window.onload=function(){
now=new Date.getTime();
if(!localStorage.getItem("stored")){
//no time stored, so lets store
store();
return;
}
last=localStorage.getItem("stored");
//if now is later than last+10seconds
if(now>last+1000*60*10){
store();
}
}
答案 1 :(得分:0)
你能设置cookies吗?将cookie值设置为当前路径,在重定向上检查当前URL的cookie值。当它匹配时(所以它是刷新的)你可以通过
触发你的10秒延迟clearTimeout(Logging)
要清除超时,请使用
{{1}}