对象不支持此属性或方法

时间:2015-07-13 07:09:08

标签: javascript jquery internet-explorer

您好我正在使用快速记事plugin。 在IE8中,我收到错误对象不支持此属性或方法,不知道如何解决这个问题,我在下面的代码中收到此错误

错误 - >

$.fn.postitall.defaults = {
    // Basic Settings
    id              : 0, //Id
    created         : Date.now(),
    domain          : window.location.origin, //Domain in the url
    page            : window.location.pathname, //Page in the url
    backgroundcolor : '#FFFC7F', //Background color
    textcolor       : '#333333', //Text color
    textshadow      : true, //Shadow in the text
    position        : 'relative', //Position absolute or relative
    posX            : '5px', //top position
    posY            : '5px', //left position
    height          : 180, //height
    width           : 200, //width
    minHeight       : 152, //resizable min-width
    minWidth        : 131, //resizable min-height
    description     : '', //content
    newPostit       : false, //Create a new postit
    autoheight      : true, //Set autoheight feature on or off
    draggable       : true, //Set draggable feature on or off
    resizable       : true, //Set resizable feature on or off
    removable       : true, //Set removable feature on or off
    changeoptions   : true, //Set options feature on or off
    savable         : false, //Save postit in local storage
    // Callbacks / Event Handlers
    onChange: function () { return 'undefined'; },
    onSelect: function () { return 'undefined'; },
    onDblClick: function () { return 'undefined'; },
    onRelease: function () { return 'undefined'; }
};

1 个答案:

答案 0 :(得分:1)

Date.now没有添加到Javascript规范中,直到ECMAScript 5,这意味着它不存在于IE8及更低版本中。这就是你得到上述错误的原因。但是,您可以实现自己的Date.now()方法:

/** +new Date is short for (new Date).valueOf(); */
var Date.now = Date.now || function(){ return +new Date; };

因此,如果Date.now存在,您将使用现有浏览器的实现,否则您将定义自己的函数。