请帮忙改一段javascript日历代码!高分!
这段日历代码在IE浏览器下浏览显示正常,可是在firefox和谷歌浏览器里显示就不正常,比如2010年6月1日就显示为110年6月1日,年的显示出了问题,如何修改不要长篇...
这段日历代码在IE浏览器下浏览显示正常,可是在firefox和谷歌浏览器里显示就不正常,比如2010年6月1日就显示为110年6月1日,年的显示出了问题,如何修改不要长篇大论,答好加80分!
代码太长无法发出去!晕! 展开
代码太长无法发出去!晕! 展开
3个回答
展开全部
见过这个问题,这是javascript 的兼容性问题。
用getFullYear火狐应该没有问题啊?
问题分析及建议,你自己试试:
var today = new date();
var year = today.getYear();
在 Firefox 里面 getYear 返回的是 “当前年份-1900〃 的值 (以前都如此)
而微软很NB的做了一个改动:
当today的年份大于等于2000的时候 直接把1900加上了 返回的 200X (而不是10X)
如:today年份是1999 返回99
today年份是2000 返回2000
一个简单的解决是加一个判断:
year = (year<1900?(1900+year):year);
也有另外的方法
通过 getFullYear getUTCFullYear 去调用,记得getFullYear IE,Firefox都没问题的,谷歌没用过。 但也肯能有兼容问题。
用前面说的解决方法应该没问题:year = (year<1900?(1900+year):year);
用getFullYear火狐应该没有问题啊?
问题分析及建议,你自己试试:
var today = new date();
var year = today.getYear();
在 Firefox 里面 getYear 返回的是 “当前年份-1900〃 的值 (以前都如此)
而微软很NB的做了一个改动:
当today的年份大于等于2000的时候 直接把1900加上了 返回的 200X (而不是10X)
如:today年份是1999 返回99
today年份是2000 返回2000
一个简单的解决是加一个判断:
year = (year<1900?(1900+year):year);
也有另外的方法
通过 getFullYear getUTCFullYear 去调用,记得getFullYear IE,Firefox都没问题的,谷歌没用过。 但也肯能有兼容问题。
用前面说的解决方法应该没问题:year = (year<1900?(1900+year):year);
展开全部
你也知道是代码出了问题,那代码呢?没有的代码我们怎么帮你啊?
你这是啥--! 你这是定义的数组,我还要看你是怎么处理这个数组的
你这是啥--! 你这是定义的数组,我还要看你是怎么处理这个数组的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没看到你的完整代码,不知道你程序如何设计的。
但可以给你点意见:
就是用if去判断一下读取日期的年,是否是完整的年号,如果不是,就需要修改年号。
其实这是电脑里的关于2000年虫的问题。在有的电脑的BIOS里存的是以1900年为0年,这样读出的年号需要加1900;有的浏览器(或系统)本身对这个问题进行了更正了,所以就能正常显示。如浏览器(或系统)没有更正,就需要你在程序中修正。为了适应所有的浏览器,你就需要在你设计的程序中设定判断来解决这更正。
但可以给你点意见:
就是用if去判断一下读取日期的年,是否是完整的年号,如果不是,就需要修改年号。
其实这是电脑里的关于2000年虫的问题。在有的电脑的BIOS里存的是以1900年为0年,这样读出的年号需要加1900;有的浏览器(或系统)本身对这个问题进行了更正了,所以就能正常显示。如浏览器(或系统)没有更正,就需要你在程序中修正。为了适应所有的浏览器,你就需要在你设计的程序中设定判断来解决这更正。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询