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


Posted in Javascript onDecember 22, 2008

如果在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开始的,所以我们要把获得月份加一。
Javascript 相关文章推荐
javascript 鼠标拖动图标技术
Feb 07 Javascript
jQuery1.6 正式版发布并提供下载
May 05 Javascript
jquery 插件学习(三)
Aug 06 Javascript
JS实现可展开折叠层的鼠标拖曳效果
Oct 09 Javascript
jQuery往返城市和日期查询实例讲解
Oct 09 Javascript
JSON+Jquery省市区三级联动
Jan 13 Javascript
jQuery 获取遍历获取table中每一个tr中的第一个td的方法
Oct 05 Javascript
最原始的jQuery注册验证方式
Oct 11 Javascript
JQuery学习总结【一】
Dec 01 Javascript
深入理解js 中async 函数的含义和用法
May 13 Javascript
vue 父组件通过v-model接收子组件的值的代码
Oct 27 Javascript
谈谈JavaScript中的函数
Sep 08 Javascript
JavaScript CSS菜单功能 改进版
Dec 20 #Javascript
JavaScript 字符串连接性能优化
Dec 20 #Javascript
js一组验证函数
Dec 20 #Javascript
flash javascript之间的通讯方法小结
Dec 20 #Javascript
javascript this用法小结
Dec 19 #Javascript
js 提交和设置表单的值
Dec 19 #Javascript
Javascript select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
Dec 19 #Javascript
You might like
深入了解php4(2)--重访过去
2006/10/09 PHP
php xml实例 留言本
2009/03/20 PHP
提高php运行速度的一些小技巧分享
2012/07/03 PHP
win7+apache+php+mysql环境配置操作详解
2013/06/10 PHP
php权重计算方法代码分享
2014/01/09 PHP
2个比较经典的PHP加密解密函数分享
2014/07/01 PHP
Zend Framework教程之Application用法实例详解
2016/03/14 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
2021/03/09 PHP
jquery分页插件AmSetPager(自写)
2013/04/15 Javascript
jquery datatable后台封装数据示例代码
2014/08/07 Javascript
Node.js 的异步 IO 性能探讨
2014/10/08 Javascript
javascript实现行拖动的方法
2015/05/27 Javascript
JavaScript入门基础
2015/08/12 Javascript
AngularJS使用指令增强标准表单元素功能
2016/07/01 Javascript
vue制作加载更多功能的正确打开方式
2016/10/12 Javascript
jQuery事件对象总结
2016/10/17 Javascript
vue2项目使用sass的示例代码
2017/06/28 Javascript
jQuery 同时获取多个标签的指定内容并储存为数组
2018/11/20 jQuery
Python操作mysql数据库实现增删查改功能的方法
2018/01/15 Python
对python:print打印时加u的含义详解
2018/12/15 Python
Python进行特征提取的示例代码
2020/10/15 Python
h5使用canvas画布实现手势解锁
2019/01/04 HTML / CSS
简洁自适应404页面HTML好看的404源码
2020/12/16 HTML / CSS
巴西食品补充剂在线零售商:Músculos na Web
2017/08/07 全球购物
一套C++笔试题面试题
2012/06/06 面试题
大型活动策划方案
2014/01/12 职场文书
市场营销求职信范文
2014/02/21 职场文书
《罗布泊,消逝的仙湖》教学反思
2014/03/01 职场文书
机关作风建设工作总结
2014/10/23 职场文书
老人再婚离婚协议书范本
2014/10/27 职场文书
体育教师个人总结
2015/02/09 职场文书
大学生学年个人总结
2015/02/15 职场文书
感恩节寄语2015
2015/03/24 职场文书
复兴之路观后感3000字
2015/06/02 职场文书
2019年度行政文员工作计划范本!
2019/07/04 职场文书
python非标准时间的转换
2021/07/25 Python