源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2021-08-16 20:02 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:jQuery 各种浏览器下获得日期区别
如果在IE下执行:
[u]复制代码[/u] 代码如下:
var currentDate = new Date(); alert(currentDate.getYear());
会弹出2008,但是在FF下就是108,这是为什么呢? 首先了解一下“格林威治标准时 (GMT)”时间,它是从1900年开始,我们来看一下这个运算表达式:108 + 1900 = 2008 原因是FF没有加上1900这个年份,然后代码如下:
[u]复制代码[/u] 代码如下:
/** * 获得当前的日期 * * @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的浏览器,所以最后的代码就是:
[u]复制代码[/u] 代码如下:
/** * 获得当前的日期 * * @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开始的,所以我们要把获得月份加一。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部