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 相关文章推荐
artDialog 4.1.5 Dreamweaver代码提示/补全插件 附下载
Jul 31 Javascript
FF火狐下获取一个元素同类型的相邻元素实现代码
Dec 15 Javascript
js中onload与onunload的使用示例
Aug 25 Javascript
vue的props实现子组件随父组件一起变化
Oct 27 Javascript
jsTree使用记录实例
Dec 01 Javascript
Angular 容器部署的方法
Apr 17 Javascript
官方推荐react-navigation的具体使用详解
May 08 Javascript
Koa代理Http请求的示例代码
Oct 10 Javascript
浅谈Vue为什么不能检测数组变动
Oct 14 Javascript
viewer.js实现图片预览功能
Jun 24 Javascript
vue-cli3 热更新配置操作
Sep 18 Javascript
浅谈JS的原型和原型链
Jun 04 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
php 文件状态缓存带来的问题
2008/12/14 PHP
php文本转图片自动换行的方法
2013/03/13 PHP
php常用Stream函数集介绍
2013/06/24 PHP
php 删除目录下N分钟前创建的所有文件的实现代码
2013/08/10 PHP
php版微信发红包接口用法示例
2016/09/23 PHP
php使用curl实现ftp文件下载功能
2017/05/16 PHP
关于PHP虚拟主机概念及如何选择稳定的PHP虚拟主机
2018/11/20 PHP
javascript学习笔记(三)显示当时时间的代码
2011/04/08 Javascript
js css后面所带参数含义介绍
2013/08/18 Javascript
nodejs npm install全局安装和本地安装的区别
2014/06/05 NodeJs
jQuery 3.0十大新特性
2016/07/06 Javascript
jQuery实现可展开折叠的导航效果示例
2016/09/12 Javascript
node实现socket链接与GPRS进行通信的方法
2019/05/20 Javascript
layer设置maxWidth及maxHeight解决方案
2019/07/26 Javascript
JavaScript Array对象基本方法详解
2019/09/03 Javascript
Vue快速实现通用表单验证功能
2019/12/05 Javascript
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
2021/01/13 Vue.js
[01:30:54]《加油DOTA》 第三期
2014/08/18 DOTA
python初学之用户登录的实现过程(实例讲解)
2017/12/23 Python
python3+PyQt5实现文档打印功能
2018/04/24 Python
python 判断参数为Nonetype类型或空的实例
2018/10/30 Python
python实现AES加密解密
2019/03/28 Python
Python正则表达式实现简易计算器功能示例
2019/05/07 Python
selenium 安装与chromedriver安装的方法步骤
2019/06/12 Python
python 字符串追加实例
2019/07/20 Python
Python爬虫入门有哪些基础知识点
2020/06/02 Python
解析HTML5的存储功能和web SQL的相关操作方法
2016/02/19 HTML / CSS
美国电子元器件分销商:Newark element14
2018/01/13 全球购物
英国太阳镜品牌:Taylor Morris Eyewear
2018/04/18 全球购物
校领导推荐信
2013/11/01 职场文书
植树节活动总结
2014/04/30 职场文书
出资证明书范本(标准版)
2014/09/24 职场文书
政风行风整改报告
2014/11/06 职场文书
全民创业工作总结
2015/08/13 职场文书
汽车销售合同文本
2019/08/08 职场文书
Django如何与Ajax交互
2021/04/29 Python