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 相关文章推荐
Jquery 扩展方法
May 06 Javascript
JS性能优化笔记搜索整理
Aug 21 Javascript
Angularjs手动解析表达式($parse)
Oct 12 Javascript
js时间控件只显示年月
Jan 08 Javascript
JavaScript hasOwnProperty() 函数实例详解
Aug 04 Javascript
带你了解session和cookie作用原理区别和用法
Aug 14 Javascript
Layui table 组件的使用之初始化加载数据、数据刷新表格、传参数
Sep 11 Javascript
Vue页面骨架屏注入方法
May 13 Javascript
jQuery对底部导航进行跳转并高亮显示的实例代码
Apr 23 jQuery
JS实现打砖块游戏
Feb 14 Javascript
javascript绘制简单钟表效果
Apr 07 Javascript
基于JavaScript或jQuery实现网站夜间/高亮模式
May 30 jQuery
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
深入PHP数据缓存的使用说明
2013/05/10 PHP
PHP魔术引号所带来的安全问题分析
2014/07/15 PHP
php cookie中点号(句号)自动转为下划线问题
2014/10/21 PHP
Yii2隐藏frontend/web和backend/web的方法
2015/12/12 PHP
利用php-cli和任务计划实现订单同步功能的方法
2017/05/03 PHP
php抽象类和接口知识点整理总结
2019/08/02 PHP
JavaScript实现动态增加文件域表单
2009/02/12 Javascript
js中的getAttribute方法使用示例
2014/08/01 Javascript
理解Javascript的动态语言特性
2015/06/17 Javascript
详解如何较好的使用js
2016/12/16 Javascript
详解angularJs中自定义directive的数据交互
2017/01/13 Javascript
js实现带缓动动画的导航栏效果
2017/01/16 Javascript
求js数组的最大值和最小值的四种方法
2017/03/03 Javascript
JS变量及其作用域
2017/03/29 Javascript
Vue 创建组件的两种方法小结(必看)
2018/02/23 Javascript
前端防止用户重复提交js实现代码示例
2018/09/07 Javascript
js拖动滑块和点击水波纹效果实例代码
2018/10/16 Javascript
node链接mongodb数据库的方法详解【阿里云服务器环境ubuntu】
2019/03/07 Javascript
JavaScript页面倒计时功能完整示例
2019/05/15 Javascript
JS实现点击生成UUID的方法完整实例【基于jQuery】
2019/06/12 jQuery
vue.js+ElementUI实现进度条提示密码强度效果
2020/01/18 Javascript
用vue 实现手机触屏滑动功能
2020/05/28 Javascript
js绘制一条直线并旋转45度
2020/08/21 Javascript
vue实现下拉菜单树
2020/10/22 Javascript
python去掉字符串中重复字符的方法
2014/02/27 Python
python编写暴力破解FTP密码小工具
2014/11/19 Python
Python中extend和append的区别讲解
2019/01/24 Python
几个适合python初学者的简单小程序,看完受益匪浅!(推荐)
2019/04/16 Python
pytorch 常用线性函数详解
2020/01/15 Python
python Pexpect模块的使用
2020/12/25 Python
意大利运动服减价商店:ScontoSport
2020/03/10 全球购物
师德演讲稿范文
2014/05/06 职场文书
治庸问责心得体会
2014/09/12 职场文书
个人年终总结结尾
2015/03/06 职场文书
创业计划书之DIY自助厨房
2019/09/06 职场文书
中秋节作文(五年级)之关于月亮
2019/09/11 职场文书