如何在页面重新加载后保留变量的值
How to retain value of the variable after the page is reloaded?
在我的代码中有一个函数,假设在按下按钮时将页面刷新时间从50秒逐渐减少到10秒。
<div id="signin" onclick="pgeReload()"></div>
....
<script type="text/javascript">
var count=0;
function pgeReload(){
if(count <= 4){
count++;
}
var times = count*10000;
var pospond = 50000-count;
setTimeout(function(){window.location.reload()}, pospond);
}
</script>
我的问题是页面的重新加载总是在50秒后发生,因为(如果我得到正确的)变量count
总是在页面重新加载时被重新分配为0。
我的问题是,我可以保留计数的值后,它已增加,即使在页面刷新后?
非常感谢每个能帮助我做那件事的人。
html5的版本。但问题还是在于初值。计数总是0
<script type="text/javascript">
var count=0;
function pagereload(){
if(typeof(Storage)!=="undefined")
{
count++;
window.content.localStorage[key]=count;
var tempTime = parseInt(window.content.localStorage[key])*1000;
var pospond = 50000-tempTime;
setTimeout(function(){window.location.reload()}, pospond);
}
else{
setTimeout(function(){window.location.reload()}, 30000);
}
</script>
可以使用HTML5的本地存储
window.content.localStorage[key]=value; //Saving
window.content.localStorage[key]; //Accessing
delete window.content.localStorage[key]; //Delete
其中KEY =要存储的变量名,VALUE是要保存的字符串值。这只支持保存字符串,但是如果你需要保存一个对象,你可以用JSON"字符串化"这个对象。
你可以这样做:
<script type="text/javascript">
function pagereload(){
if(typeof(Storage)!=="undefined")
{
var count=(window.content.localStorage[key])? parseInt(window.content.localStorage[key]): 0;
count++;
window.content.localStorage[key] = count;
var tempTime = count*1000;
var pospond = 50000-tempTime;
setTimeout(function(){window.location.reload()}, pospond);
}
else{
setTimeout(function(){window.location.reload()}, 30000);
}
</script>
你最好看看浏览器的cookie。
http://www.w3schools.com/js/js_cookies.asp您可以使用cookie或本地存储将数据持久地存储在浏览器上。
然后,在同一域的未来页面中,您可以使用javascript检索先前的值。如果不使用这样的技术在本地存储数据,每次重新加载浏览器页面都是全新的。
您的另一个选择是代表当前用户将数据存储在服务器上。当在客户机中更改值时,您将对服务器进行ajax调用,以便将新值存储在服务器上。然后,您可以在将来的页面中使用ajax从服务器检索值,或者服务器可以在每次请求时将当前值放入页面中。您可能需要某种识别当前用户(通常是用户登录)的方法,以便服务器能够检索正确的用户数据。
使用localstore是一个好主意,但是如果您正在寻找一些简单的东西,您可以在重新加载页面时将计数放在查询字符串中,例如:
window.location.href = url + '?count=' + count
您可以根据变量检查计数或是否为初始负载:
window.location.search
例如,如果您用?count=3
重新加载页面,那么该变量的值将是?count=3
。您还可以将计数本身放在查询字符串中以简化解析,如下所示:
window.location.href = url + '?' + count
- Chrome坚持保留陈旧的javascript代码,并赢得了't重新加载最新版本
- 如何在重新加载页面后保留在选定的选项卡中
- Jquery添加类并在页面重新加载时保留
- 在页面重新加载时保留下拉选择
- 如何使文本在重新加载后保留
- 即使在重新加载 javascript 后,我如何保留值的值
- 如何在 chrome 扩展程序中重新加载浏览器后保留变量的值
- 在 CKEditor 中重新加载页面后保留光标位置
- 如何使用 CreateJS 的 PreloadJS 来加载图像并保留属性
- 我是否需要保留对预加载图像的引用,或者是否可以对它们进行垃圾回收
- 如何在编辑链接单击时首次加载页面时保留值
- 引导手风琴.保留多个面板的页面加载状态
- 在页面重新加载时保留表单数据
- 使用Javascript加载内容,但仍然保留到特定内容页面的唯一链接
- PureCSS在表单提交时停止页面重新加载,但保留表单验证
- 如何保留javascript变量,即使我重新加载或重定向到任何其他页面
- 即使在使用javascript重新加载后,也要保留滚动条的位置
- Angular JS在重新加载后保留滚动位置
- 防止浏览器在重新加载父级时保留iframe url
- 如何在页面重新加载后在Jquery选择框中保留所选值