【safari挖的那些坑】iOS safari 浏览器 时间乱码(ios时间显示NaN) 问题解决

一般html

iOS下时间错误表现形式html5

 

问题一:android

 这个界面运用了大量的日期类型的计算,当咱们用JavaScript实例化一个日期对象时,咱们能够这样用:ios

var date =new Date(); 

 上面这段代码是获取当前日期,这段代码在Firefox、Chrome、Safari浏览器中均可以运行。可是若是我想根据字符串获取日期,问题就来了。看下面代码。浏览器

var date =new Date("2016-05-31 08:00");  

 这段代码是得到字符中指定的日期,它Firefox、Chrome中就能运行,可是放在Safari就会报错,错误是NaN,意思是Not a Number。就是由于这个错,苹果手机不能正常运行我开发的这个界面,当时都快郁闷死了,我写了300行js啊,几乎都与时间有关,不是取值就是赋值,要不就是计算,现在IOS不支持。。。。。。。函数

 

 在网上找了一下,将代码这样写就行了:spa

var date =new Date("2016/05/31 08:00");  

 这样Android和IOS就能共用了,写了个函数,替换一下!.net

function GetDateDiff(startDiffTime, endDiffTime) {  
            //将xxxx-xx-xx的时间格式,转换为 xxxx/xx/xx的格式   
            startTime = startDiffTime.replace(/\-/g, "/");  
            endTime = endDiffTime.replace(/\-/g, "/");  
};  

 

问题二:code

  HTML5中新增了日历控件,若是将控件的type=“datetime-local”,若是是Chrome,控件的日期显示格式是2016/05/30 08:00 ,若是是Safari,日期的显示格式是:2016-05-31T08:00,当咱们用jQuery取值赋值的时候,就必须用这种方式才能赋值:假如说这个日历控件的id是timeDate,代码以下:htm

$("#timeDate').val("2016-05-30T08:30");  

  用$("#timeDate').val("2016/05/30 08:30");就会报错。但是Chrome的显示方式就是这样的啊!!!尼玛的还有天理吗?
  这两个坑确定不光坑过我本身一我的,但愿之后注意吧!

 

摘自:http://blog.csdn.net/wangshuai6707/article/details/52026298

相关文章
相关标签/搜索