IE8: L’object ne prend pas en charge cette propriété ou cette méthode (fonction Date)

Je reçois une erreur qui n’apparaît que sur le formidable IE8. Elle pointe vers la fonction suivante, plus précisément la ligne: 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."); 

Je ne suis pas sûr de ce qui pourrait causer cela, je suis assez nouveau pour développer des navigateurs plus anciens. Cela fonctionne très bien dans FF, IE10, Chrome, Safari.

Toute aide serait très appréciée.

Merci

On dirait que Date.now() n’est pas supporté par IE8 (voir le tableau en bas):

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

new Date() devrait vous fournir un object de date avec la date du jour.

Shim en utilisant la valeur factuelle d’ une date est ms ..

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

IE 8 ne prend pas en charge Date.now. Implémentez-le comme:

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

Mes compétences en débogage psychique me disent que vous utilisez jQuery 2.0, qui ne prend pas en charge IE8.

Vous devez utiliser 1.10.