js怎么得到上次的打开和关闭时间?
var
opentime = localStorage.getItem(
"opentime"
) ||
"之前没有打开过"
;
var
cleartime = localStorage.getItem(
"cleartime"
) ||
"之前没有关闭过"
;
localStorage.setItem(
"opentime"
,
new
Date().toLocaleString());
window.onunload =
function
() {
localStorage.setItem(
"cleartime"
,
new
Date().toLocaleString());
};
alert(
"上一次打开时间:"
+opentime+
"\n上一次关闭时间:"
+cleartime);
var d=new Date();
Date.prototype.toLocaleString=function (){
d=this.getFullYear()+"年"+(this.getMonth()+1)+" 月" +this.getDate()+"日"+this.getHours()+"时"+this.getMinutes()+" 分"+this.getSeconds()+"秒";
};
localStorage.setItem("opentime",d.toLocaleString());
这样设置时间格式,为什么上次打开时间是undefined,关闭时间是可以实现的
onunload事件的兼容不是很好。。。不过换个资源代下载网思路,其实我们可以做个定时器嘛,嘿嘿。打开的时间很好办,关键在于这个关闭的时间。因为如今的浏览器,没有一个很好的能够统一的监听关闭的事件。
window.onload = function () {
let lastOpenTime = localStorage.getItem("openTime") || "";
let lastCloseTime = localStorage.getItem("currentTime") || "";
document.body.innerHTML = "<div>上一次打开时 间:" + lastOpenTime + "</div><div>上一次关闭时 间:" + lastCloseTime + "</div>";
localStorage.setItem("openTime", new Date().getTime());
setInterval(function () {
localStorage.setItem("currentTime", new Date().getTime());
}, 100);
}
这样子的效果更好哦~
Date.prototype.toLocaleString=function (){
return this.getFullYear()+"年"+ (this.getMonth()+1)+"月" +this.getDate()+"日"+this.getHours()+" 时"+this.getMinutes()+"分"+this.getSeconds()+"秒";
};
存在前端localStarge中或存在数据库内。