我想使用localStorage对象使用JavaScript制作应用程序,以便我可以存储信息,以便下次打开文件时,之前存储的信息仍然存在。我的目标是你在网站上呆了多长时间。怎么可以使用localStorage.setItem("example", "variable")
所以我可以用它作为时钟的计数器?这是我的测试代码之一:
<!DOCTYPE html>
<html>
<title>Tracking Time</title>
<style>
#time {
font-size: 250%
}
</style>
<center>
<body>
<h1><font face="fantasy">The Time You Have Had This Tab Open</font></h1>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<h1 id="time"><font face="impact" size="10">00:00:00:00:00:00</font></h1>
<script src="https://code.jquery.com/jquery-2.1.0.js"></script>
<script>
// Update Count
setInterval(function () {
localStorage.setItem("sec", 0);
}, 1000)
//
// Update Text
setInterval(function (){
$("#time").text( + " year(s) " + + " month(s) " + + " day(s) " + + " hour(s) " + + " minute(s) " + localStorage.getItem("sec") + " second(s)")
}, 1)
</script>
</body>
</center>
</html>
很抱歉它不完整,但我需要帮助。我可以用它作为变量吗?请举个例子。谢谢!
答案 0 :(得分:0)
这样做的一种方法是在本地存储中设置某种“时间”属性(如果不存在)。
if (localStorage.getItem('time') === null) {
localStorage.setItem('time', 0);
}
然后在循环期间,您可以增加本地存储中保存的时间。
var intervalTime = 1000;
setInterval(function() {
// localStorage saves as strings so lets make it an integer
var totalTime = parseInt(localStorage.getItem('time'));
localStorage.setItem('time', totalTime + intervalTime);
}, intervalTime);
这将节省用户在您网站上花费的总毫秒数。然后,您可以使用这些毫秒来显示他们在网站上的时长。
var totalMilliseconds = parseInt(localStorage.getItem('time'));
var totalTime = new Date(totalMilliseconds);
var hours = totalTime.getHours();
var minutes = totalTime.getMinutes();
var seconds = totalTime.getSeconds();