我正在尝试编写一个 cookie 来跟踪访问者的新近度,但我在使用 IE8 时遇到了困难。我的日志向 IE 用户显示的错误信息不那么丰富:TypeError:对象不支持此属性或方法。
知道我需要在下面的代码中修改什么才能使其与 IE 兼容吗?
var currentDate = Date.now();
var cookies = document.cookie.match(/jcom\=.+\}/);
if (cookies == null) {
var cookieBase = '{"created":"createdNull","lastVisit":"visitNull"}';
var siteTime = $.parseJSON(cookieBase);
siteTime.created = currentDate;
siteTime.lastVisit = currentDate;
cookieOut = "{\"created\":" + siteTime.created + ",\"lastVisit\":" + siteTime.lastVisit + "};expires=Thu, 2 Aug 2020 20:47:11 UTC;path=/";
document.cookie="jcom=" + cookieOut;
}
else {
var cookies = document.cookie.match(/jcom\=.+\}/)[0];
var cookieSplit1 = cookies.split('=')[1];
var cookieSplit= cookieSplit1.split(';')[0]
var siteTime = $.parseJSON(cookieSplit);
siteTime.lastVisit = currentDate;
cookieOut = "{\"created\":" + siteTime.created + ",\"lastVisit\":"+ siteTime.lastVisit + "};expires=Thu, 2 Aug 2020 20:47:11 UTC;path=/";
document.cookie="jcom=" + cookieOut;
}
谢谢!
最佳答案
Internet Explorer 8 不支持 Date.now()
。您可以非常轻松地自己实现:
if( !Date.now) {
Date.now = function() {return new Date.getTime();};
}
关于javascript - IE JS 类型错误 : Object does not support this property or method,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12809044/