最新消息:前端博客、web前端博客、Angularjs、javascript、jQuery、HTML5、CSS3

ios/ie部分浏览器使用javascript格式化日期出现NaN原因

JavaScript AZ 2687浏览 0评论

最近做年度活动报名H5页面,用于安卓和IOS中。测试时发现安卓没有问题,IOS下没有地行实际的效果。用IOS调试工具调试发现js指定日期转换时间戳出现问题,在Safari或IE下值为NaN。原来代码里面直接用了new Date(endTimestamp).getTime()转换时间戳。

注意:指定一个具体的时间转换时间戳,需要yyyy/mm/dd hh:ii:ss格式,yyyy-mm-dd在IE和Safari下是有问题的。

修改后代码为:

[codesyntax lang=”javascript”]

function splitTimeEnd(startTimestamp, endTimestamp) {
        startTimestamp = startTimestamp.replace(/\-/g, '/');
        endTimestamp = endTimestamp.replace(/\-/g, '/');
        var now = new Date(),
            startTime = new Date(startTimestamp),
            endDate = new Date(endTimestamp),
            isStart = startTime.getTime() - now.getTime(),
            isEndTime = endDate.getTime() - now.getTime(),
            btnTxt;

        if (isStart > 0) {
            btnTxt = "报名未开始";
            $('#btn').attr('title', btnTxt).html(btnTxt).addClass('dis');
        }
        if (isEndTime <= 0) {
            btnTxt = "报名已结束";
            $('#btn').attr('title', btnTxt).html(btnTxt).addClass('dis');
            window.clearInterval(timer);
        }

    }
    var timer = window.setInterval(function() {
        splitTimeEnd(startTimestamp, endTimestamp);
    }, 1000);

[/codesyntax]

转载请注明:TUTERM.COM » ios/ie部分浏览器使用javascript格式化日期出现NaN原因

如果您觉得本文的内容对您的学习有所帮助,您可以支付宝(左)或微信(右):
alipay weichat

您必须 登录 才能发表评论!