zoukankan      html  css  js  c++  java
  • 关于倒计时new Date().getTime()出现NaN

    之前的倒计时是这么写的

    //计算剩余时间  time-截止时间;serverTime--服务器时间,id-要显示时分秒对应的父节点Id

    function countRestTime(time,serverTime,id){ 

    var day_elem = $(id).find('.day'); 

    var hour_elem = $(id).find('.hour'); 

    var minute_elem = $(id).find('.minute'); 

    var second_elem = $(id).find('.second'); 

    var end_time = new Date(time).getTime();//月份是实际月份-1 

    var start_time= new Date(serverTime).getTime();

    var sys_second = (end_time-start_time)/1000; 

    function startTime(){ 

    if (sys_second > 1) { 

    sys_second -= 1; 

    var day = Math.floor((sys_second / 3600) / 24); 

    var hour = day*24 + Math.floor((sys_second / 3600) % 24); 

    var minute = Math.floor((sys_second / 60) % 60); 

    var second = Math.floor(sys_second % 60); 

    day_elem && $(day_elem).text(day);//计算天 

    $(hour_elem).text(hour<10?"0"+hour:hour);//计算小时 

    $(minute_elem).text(minute<10?"0"+minute:minute);//计算分钟 

    $(second_elem).text(second<10?"0"+second:second);//计算秒杀 

    } else { 

     clearInterval(timer); 

    }; 

    timer = setInterval(startTime,1000);

    startTime();

    以上代码在google浏览器,安卓手机微信是没任何问题的,但是在苹果手机或者苹果微信异常;

    问题出在new Date(time).getTime();返回的是NaN;

    解决方案:

    new Date(time).getTime();返回的是NaN;

    改为:

    eval("new Date("+ time.replace(/\D+/g,",")+")").getTime(); 

    则在google浏览器  安卓、安卓微信,苹果浏览器 ,苹果微信统统秒杀!  

    //计算剩余时间

    //www.c9009.com

    function countRestTime(time,serverTime,id){ 

    var day_elem = $(id).find('.day'); 

    var hour_elem = $(id).find('.hour'); 

    var minute_elem = $(id).find('.minute'); 

    var second_elem = $(id).find('.second'); 

    var end_time =  eval("new Date("+ time.replace(/\D+/g,",")+")").getTime(); 

    var start_time= eval("new Date("+ serverTime.replace(/\D+/g,",")+")").getTime();

    var sys_second = (end_time-start_time)/1000; 

    function startTime(){ 

    if (sys_second > 1) { 

    sys_second -= 1; 

    var day = Math.floor((sys_second / 3600) / 24); 

    var hour = day*24 + Math.floor((sys_second / 3600) % 24); 

    var minute = Math.floor((sys_second / 60) % 60); 

    var second = Math.floor(sys_second % 60); 

    day_elem && $(day_elem).text(day);//计算天 

    $(hour_elem).text(hour<10?"0"+hour:hour);//计算小时 

    $(minute_elem).text(minute<10?"0"+minute:minute);//计算分钟 

    $(second_elem).text(second<10?"0"+second:second);//计算秒杀 

    } else { 

     clearInterval(timer); 

    }; 

    timer = setInterval(startTime,1000);

    startTime();

    }

  • 相关阅读:
    经典之计算机内存管理
    Git 远程仓库
    【玩转微信公众平台之十】 图文消息回复解说
    C++11中的继承构造函数
    树莓派使用无线网卡上网相关命令
    swift的UITableView的使用
    相似微信的ChattingUi
    HDOJ 5289 Assignment 单调队列
    poj1936
    samba 文件和目录权限控制
  • 原文地址:https://www.cnblogs.com/sjc9009/p/4350233.html
Copyright © 2011-2022 走看看