首页 » 建站技术 » 浏览内容

2010年为什么在FIrefox 下 变成了 110 年


2010-08-16 22:42:10 2,061 0 发表评论 字体: 作者:C.K.
标签: 代码年份

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

“2010年”在IE下显示正常,在Firefox opera 下却变成了 “110”
请问这需要改变什么吗?
相关代码如下:

<body onload="show_time()">
  • <script language="javascript">
  • function show_time()
  • {
  •   var now=new Date();
  •   var year=now.getYear();
  •   var month=now.getMonth()+1;
  •   var day=now.getDate();
  •   var hours=now.getHours();
  •   var minutes=now.getMinutes();
  •   var seconds=now.getSeconds();
  •   var timeValue=year+"年"
  •   timeValue+=month+"月"
  •   timeValue+=day+"日 "
  •   timeValue+=(hours<=12)?"上午":"下午"
  •   timeValue+=(hours>12)?hours-12:hours
  •   timeValue+=((minutes<10)?":0":":")+minutes;
  •   timeValue+=((seconds<10)?":0":":")+seconds;
  •   document.getElementById("time").value=timeValue;
  •   setTimeout("show_time()",1000);
  • }
  • </script>
  • <input type="text" id="time" size="24" style="border:0"/>
  • </body>
  • getYear 修改为 getFullYear
    getYear 返回的是 1900-1999 年的两位数
    超过1999 的就返回从1900年算起的三位数
    1900+110 = 2010
    如果现在是 1998年,getYear 返回 98
    所以现在显示是110
    *****************************
    用getFullYear可以直接获取年份
    getYear()方法
    【分析说明】先看一下以下代码:
    var year= new Date().getYear();document.write(year);  
    在IE中得到的日期是”2010″,在Firefox中看到的日期是”110″,主要是因为在 Firefox 里面 getYear 返回的是 “当前年份-1900” 的值。
    【兼容处理】加上对年份的判断,如:
    var year= new Date().getYear();year = (year<1900?(1900+year):year);document.write(year);  也可以通过 getFullYear getUTCFullYear 去调用: var year = new Date().getFullYear();document.write(year);

      网站统计 Statistics

      • 创建时间: 2005年1月3日 距今4890 天
      • 日志总数: 2461
      • 评论总数: 630
      • 标签总数: 654
      • 链接总数: 273
      • 最后更新: 2017-7-1 18:16:33
      • 您是本站第 13548382 位访客

      广告区 Guǎng Gào