IE8:对象不;t支持此属性或方法(日期函数)

IE8: Object Doesn't Support This Property or Method (Date function)

本文关键字:方法 日期 函数 属性 对象 支持 IE8      更新时间:2023-09-26

我得到一个只出现在伟大的IE8上的错误,它指向以下函数,特别是行:return (expDate.getTime() > Date.now());

$.validator.addMethod("checkDocExpiry",function(value) {
    var driverLicExp = ($('#drivers-license-expiration').val()) ? $('#drivers-license-expiration').val() : '';
    if (driverLicExp != ''){
        var expDate = new Date(driverLicExp);
        return (expDate.getTime() > Date.now());
    }else{
        return (true);
    }
}, "Your driver's license has expired.");

我不确定是什么原因导致了这种情况,我对为旧浏览器开发相当陌生。这在FF、IE10、Chrome、Safari中运行良好。

任何帮助都将不胜感激。

感谢

看起来IE8中不支持Date.now()(请参阅底部的表):

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/now

new Date()应该为您获取一个具有当前日期的日期对象。

使用valueOf的事实进行填隙,日期ms。。

if (!Date.now) Date.now = function () {return +new Date();};

IE 8不支持Date.now。将其实现为:

if(!Date.now) { Date.now = function(){ return new Date().getTime();};}

我的心理调试技能告诉我,您使用的是不支持IE8的jQuery 2.0。

你需要使用1.10。