最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

jQuery各种浏览器下获得日期区别_jquery

来源:动视网 责编:小采 时间:2020-11-27 20:41:52
文档

jQuery各种浏览器下获得日期区别_jquery

jQuery各种浏览器下获得日期区别_jquery:如果在IE下执行: 代码如下:var currentDate = new Date(); alert(currentDate.getYear()); 会弹出2008,但是在FF下就是108,这是为什么呢? 首先了解一下格林威治标准时 (GMT)时间,它是从1900年开始,我们来看一下这个运算表达式:108 +
推荐度:
导读jQuery各种浏览器下获得日期区别_jquery:如果在IE下执行: 代码如下:var currentDate = new Date(); alert(currentDate.getYear()); 会弹出2008,但是在FF下就是108,这是为什么呢? 首先了解一下格林威治标准时 (GMT)时间,它是从1900年开始,我们来看一下这个运算表达式:108 +


如果在IE下执行:
代码如下:
var currentDate = new Date();
alert(currentDate.getYear());

会弹出2008,但是在FF下就是108,这是为什么呢?
首先了解一下“格林威治标准时 (GMT)”时间,它是从1900年开始,我们来看一下这个运算表达式:108 + 1900 = 2008
原因是FF没有加上1900这个年份,然后代码如下:
代码如下:
/**
* 获得当前的日期
*
* @return {}
*/
function getCurrentDate() {
var userAgent = navigator.userAgent.toLowerCase();
// 因IE的年为2008和FF为108,判断
var currentYear = currentDate.getYear();
if ($.browser.mozilla) {
currentYear += 1900;
}
var currentDateStr = currentYear + '-' + (currentDate.getMonth() + 1) + '-' + currentDate.getDate();
return currentDateStr;
};

问题解决了,测试成功
后来又在GOOGLE浏览器chrome下运行系统竟然也遇到了同样的问题……
大家看看这个判断:
if ($.browser.mozilla)
这里判断是否为FF浏览器,上面的代码已经通过测试,那么GOOGLE浏览器怎么办呢?
同样我也做了一个判断:
var userAgent = navigator.userAgent.toLowerCase();
var chrome = /chrome/.test(userAgent);
这里套用jQuery的浏览器判断方法,用正则表达式获得浏览器的一系列参数,然后查询有没有chrome字符串,有就是GOOGLE的浏览器,所以最后的代码就是:
代码如下:
/**
* 获得当前的日期
*
* @return {}
*/
function getCurrentDate() {
var userAgent = navigator.userAgent.toLowerCase();
//判断是否为google的浏览器
var chrome = /chrome/.test(userAgent);
var currentDate = new Date();
// 因IE的年为2008和FF为108,判断
var currentYear = currentDate.getYear();
if ($.browser.mozilla || chrome) {
currentYear += 1900;
}
var currentDateStr = currentYear + '-' + (currentDate.getMonth() + 1) + '-'
+ currentDate.getDate();
return currentDateStr;
};

其他浏览器按照逻辑推就可以了
最后还有一点要注意的就是获得月份的方法:currentDate.getMonth() + 1,因为日期在最初设计的时候是从0开始的,所以我们要把获得月份加一。

文档

jQuery各种浏览器下获得日期区别_jquery

jQuery各种浏览器下获得日期区别_jquery:如果在IE下执行: 代码如下:var currentDate = new Date(); alert(currentDate.getYear()); 会弹出2008,但是在FF下就是108,这是为什么呢? 首先了解一下格林威治标准时 (GMT)时间,它是从1900年开始,我们来看一下这个运算表达式:108 +
推荐度:
标签: 时间 浏览器 日期
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top