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控制listbox中项的移动并排序
Nov 12 Javascript
调用innerHTML之后onclick失效问题的解决方法
Jan 28 Javascript
JavaScript实现的Tween算法及缓冲特效实例代码
Nov 03 Javascript
jQuery选择器实例应用
Jan 05 Javascript
javascript自执行函数
Feb 10 Javascript
JavaScript实现动态增删表格的方法
Mar 09 Javascript
解决VUEX刷新的时候出现数据消失
Jul 03 Javascript
JScript实现地址选择功能
Aug 15 Javascript
vue组件间通信子与父详解(二)
Nov 07 Javascript
SVG实现时钟效果
Jul 17 Javascript
layui输入框中只允许输入整数的实现方法
Sep 18 Javascript
Antd的table组件表格的序号自增操作
Oct 27 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的宝库目录--PEAR
2006/10/09 PHP
攻克CakePHP系列一 连接MySQL数据库
2008/10/22 PHP
PHP 日常开发小技巧
2009/09/23 PHP
PHP数组内存耗用太多问题的解决方法
2010/04/05 PHP
PHP以及MYSQL日期比较方法
2012/11/29 PHP
php中session退出登陆问题
2014/02/27 PHP
微信公众平台接口开发入门示例
2014/12/24 PHP
php中照片旋转 (orientation) 问题的正确处理
2017/02/16 PHP
jquery 插件之仿“卓越亚马逊”首页弹出菜单效果
2008/12/25 Javascript
在IE下获取object(ActiveX)的Param的代码
2009/09/15 Javascript
多个datatable共存造成多个表格的checkbox都被选中
2013/07/11 Javascript
Nodejs sublime text 3安装与配置
2014/06/19 NodeJs
javascript实现的简单计时器
2015/07/19 Javascript
jQuery中的siblings用法实例分析
2015/12/24 Javascript
使用JS实现图片展示瀑布流效果(简单实例)
2016/09/06 Javascript
Bootstrap 3的box-sizing样式导致UEditor控件的图片无法正常缩放的解决方案
2016/09/15 Javascript
ASP.NET jquery ajax传递参数的实例
2016/11/02 Javascript
JavaScript组成、引入、输出、运算符基础知识讲解
2016/12/08 Javascript
vue过渡和animate.css结合使用详解
2017/06/14 Javascript
angular4 获取wifi列表中文显示乱码问题的解决
2018/10/20 Javascript
JS实现带阴历的日历功能详解
2019/01/24 Javascript
vue+vant使用图片预览功能ImagePreview的问题解决
2020/04/10 Javascript
在react项目中使用antd的form组件,动态设置input框的值
2020/10/24 Javascript
原生JS实现拖拽功能
2020/12/16 Javascript
python插入数据到列表的方法
2015/04/30 Python
Python判断文件和文件夹是否存在的方法
2015/05/21 Python
Python找出list中最常出现元素的方法
2016/06/14 Python
Python爬取商家联系电话以及各种数据的方法
2018/11/10 Python
解决python pandas读取excel中多个不同sheet表格存在的问题
2020/07/14 Python
Python 合并拼接字符串的方法
2020/07/28 Python
惠普加拿大在线商店:HP加拿大
2017/09/15 全球购物
土耳其时尚潮流在线购物网站:Trendyol
2017/10/10 全球购物
药学专业学生的自我评价分享
2014/02/06 职场文书
餐厅采购员岗位职责
2014/03/06 职场文书
项目经理聘任书
2014/03/29 职场文书
婚礼女方父母答谢词
2015/01/04 职场文书