js中使用new Date(str)创建时间对象不兼容firefox和ie的解决方式

原创
2015/11/05 17:54
阅读数 1.2W

        还是上次的那个时间滑动条问题,突然发现在火狐和ie上面刻度和时间都没显示出来(本人开发的时候使用谷歌,当时没去测),于是就开始在那么多行代码中加断点调试,最后发现new Date(strDate);返回的是无效的时间格式,我就郁闷了~~~~~于是就去看api中看date的说明,就在里面找其它的构造方法尝试,果然功夫不负有心人啊!!!!终于可以安心的下班了!!!!代码如下:

    

/**
 * 解决 ie,火狐浏览器不兼容new Date(s)
 * @param strDate
 * 返回 date对象
 * add by zyf at 2015年11月5日
 */
function getDateForStringDate(strDate){
	//切割年月日与时分秒称为数组
	var s = strDate.split(" "); 
	var s1 = s[0].split("-"); 
	var s2 = s[1].split(":");
	if(s2.length==2){
		s2.push("00");
	}
	return new Date(s1[0],s1[1]-1,s1[2],s2[0],s2[1],s2[2]);
}



另外一个构造函数也是兼容性比较强的也贴出来

var date = new Date(strDate.replace("-", "/").replace("-", "/"));



ok  吃饭去了~~~~~

展开阅读全文
加载中

作者的其它热门文章

打赏
0
2 收藏
分享
打赏
1 评论
2 收藏
0
分享
返回顶部
顶部