[英]Storing a boolean or int and check/change it's value after the page has loaded
我想存储一个布尔值或INT某处,我可以检查它的页面已经loadedd后,这样我就可以在页面加载后布尔更改为false(通过a
链接)。
我知道你可以将它作为隐藏文本或隐藏的单选按钮放在页面上,但那真的很难看......
我也在考虑使用HTML 5的客户端存储。
到目前为止我有这个:
但是当我稍后在脚本中检查stopOnMouseOut它总是返回true时,这显然不起作用...
stopOnMouseOut = true;
var stopSoundsVar = document.getElementById("stop_sounds");
stopSoundsVar.onclick = function() {
// toggle boolean
if (stopOnMouseOut == true) {
stopOnMouseOut = false;
}else {
stopOnMouseOut = true;
}
//alert(stopOnMouseOut);
return false;
}
这样做有什么最佳做法吗?
正如您在问题中所述,您可以使用localStorage(持久性浏览器加载)或sessionStorage(仅持续页面生命周期 - 新窗口是新会话)。
使用localStrorage(或sessionStorage)非常简单:
localStorage.key = "value";
您只能在DOM存储中存储字符串,因此您可能必须将检索到的布尔值比较为"true"
或"false"
而不仅仅是true
或false
。 或者,您可以将数据转换为JSON,然后解析JSON。
使用localStorage保存数据: http : //hacks.mozilla.org/2009/06/localstorage/
兼容性: http : //dev-test.nemikor.com/web-storage/support-test/
您可以稍微简化一下条件:
var stopOnMouseOut = true,
stopSoundsVar = document.getElementById("stop_sounds");
stopSoundsVar.onclick = function() {
stopOnMouseOut = !stopOnMouseOut;
return false;
}
演示: http : //jsfiddle.net/bHmyj/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.