为了账号安全,请及时绑定邮箱和手机立即绑定

- 如果new Date("2016/06/17, 18:47:52") 是这样的话就会只出现小时并且报countdown.js:53 Uncaught TypeError: Cannot read property 'length' of undefined 要是new Date(2016,6,17,22,47,52)这样的话,就会都是0,而且不报错,这是怎么回事 当前时间为​2016,7,16 20:18 麻烦大家了 -

var WINDOW_WIDTH = 1024;

var WINDOW_HEIGHT = 768;

var RADIUS = 8;

var MARGIN_TOP = 60;

var MARGIN_LEFT = 30;


const endTime = new Date("2016/06/17, 18:47:52");

 var curShowTimeSeconds = 0;


window.onload = function () {


  var canvas = document.getElementById('canvas');

  var context = canvas.getContext("2d");


  canvas.width = WINDOW_WIDTH;

  canvas.height = WINDOW_HEIGHT;


  curShowTimeSeconds = getCurrentShowTimeSeconds();


  render(context);

}


function getCurrentShowTimeSeconds() {

  var curTime = new Date();

  var ret = curTime.getTime() - endTime.getTime();

  ret = Math.round(ret / 1000);


  return ret >= 0 ? ret : 0;

}




function render(cxt) {


  var hours = parseInt(curShowTimeSeconds / 3600);

  var minutes = parseInt((curShowTimeSeconds - hours*3600 )/ 60);

  var seconds = curShowTimeSeconds % 60;


  renderDigit(MARGIN_LEFT, MARGIN_TOP, parseInt(hours / 10), cxt)

  renderDigit(MARGIN_LEFT + 15 * (RADIUS + 1), MARGIN_TOP, parseInt(hours % 10), cxt)

  renderDigit(MARGIN_LEFT + 30 * (RADIUS + 1), MARGIN_TOP, 10, cxt)

  renderDigit(MARGIN_LEFT + 39 * (RADIUS + 1), MARGIN_TOP, parseInt(minutes / 10), cxt);

  renderDigit(MARGIN_LEFT + 54 * (RADIUS + 1), MARGIN_TOP, parseInt(minutes % 10), cxt);

  renderDigit(MARGIN_LEFT + 69 * (RADIUS + 1), MARGIN_TOP, 10, cxt);

  renderDigit(MARGIN_LEFT + 78 * (RADIUS + 1), MARGIN_TOP, parseInt(seconds / 10), cxt);

  renderDigit(MARGIN_LEFT + 93 * (RADIUS + 1), MARGIN_TOP, parseInt(seconds % 10), cxt);

}


function renderDigit(x, y, num, cxt) {


  cxt.fillStyle = "rgb(0,102,153)";


  for (var i = 0; i < digit[num].length; i++)

    for (var j = 0; j < digit[num][i].length; j++)

      if (digit[num][i][j] == 1) {

        cxt.beginPath();

        cxt.arc(x + j * 2 * (RADIUS + 1) + (RADIUS + 1), y + i * 2 * (RADIUS + 1) + (RADIUS + 1), RADIUS, 0, 2 * Math.PI)

        cxt.closePath()


        cxt.fill()

      }

}

哪里有问题么

正在回答

3 回答

var ret = endTime.getTime() - curTime.getTime();你好像写反了

1 回复 有任何疑惑可以回复我~
#1

泽泽222 提问者

真的是这样,谢谢啦,我曾经也试过用end - cur,可能是因为但是日期没写好结果也报了错
2016-07-20 回复 有任何疑惑可以回复我~

我的也是全是0  这个怎么解决呢

0 回复 有任何疑惑可以回复我~

谷歌浏览器的话还是写成new Date(2016,6,22,22,47,52)这样比较好,如果是new Date("2016/06/22, 18:47:52")的话,显示的都是0


0 回复 有任何疑惑可以回复我~
#1

慕粉0302633

我用谷歌浏览器写成new Date(2017,6,22,22,47,52);还是全部为0这是怎么回事呢??
2017-09-30 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

- 如果new Date("2016/06/17, 18:47:52") 是这样的话就会只出现小时并且报countdown.js:53 Uncaught TypeError: Cannot read property 'length' of undefined 要是new Date(2016,6,17,22,47,52)这样的话,就会都是0,而且不报错,这是怎么回事 当前时间为​2016,7,16 20:18 麻烦大家了 -

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信