2016-11-21 58 views
-1

我想修改此脚本,以便它还可以显示星期几和日期。显示星期几,小时和分钟,以及日期

(function() { 
    function checkTime(i) { 
     return (i < 10) ? "0" + i : i; 
    } 

    function startTime() { 
     var today = new Date(), 
      h = checkTime(today.getHours()), 
      m = checkTime(today.getMinutes()); 
     document.getElementById('time').innerHTML = h + ":" + m; 
     t = setTimeout(function() { 
      startTime() 
     }, 500); 
    } 
    startTime(); 
})(); 

我虽然关于增加一个getDay();,但我不知道如何添加它在功能上是诚实的。知道日期和日期必须在页面上自动更新,这将保持开放几天..(这是一个几乎总是保持不变的显示。)

任何想法?

+0

你为什么不知道怎么加呢? 'var d = today.getDate()''... innerHTML = d +':'+ h ...'? – putvande

+0

你有没有读过[this](http://www.w3schools.com/jsref/jsref_obj_date.asp)?就网页不刷新而言,只需使用[setInterval](http://www.w3schools.com/jsref/met_win_setinterval.asp)重新计算当前时间即可。 –

+0

@KevinKloet'setInterval()'是邪恶的;使用'setTimeout()'递归调用要好得多。 – BenM

回答

1

的月份和日期的名字添加到阵列,然后用getDay()getDate()getMonth()getFullYear()

(function() { 
 
    function checkTime(i) { 
 
     return (i < 10) ? "0" + i : i; 
 
    } 
 

 
    function startTime() { 
 
    \t var months = [ 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December' ], 
 
     \t days = [ 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' ] 
 
    
 
     var today = new Date(), 
 
      d = today.getDay(), 
 
      f = today.getDate(), 
 
      m = today.getMonth(), 
 
      y = today.getFullYear(), 
 
      
 
      h = checkTime(today.getHours()), 
 
      i = checkTime(today.getMinutes()); 
 
     
 
     var val = days[d]+', '+f+' '+months[m]+' '+y+' - '+h+':'+i; 
 
     
 
     document.getElementById('time').innerHTML = val; 
 
     
 
     t = setTimeout(function() { 
 
      startTime() 
 
     }, 500); 
 
    } 
 
    
 
    startTime(); 
 
})();
<div id="time"></div>

+0

谢谢你本!你能告诉我关于退货的情况吗?它究竟做了什么? – Ezhno

+0

哪个退货?对不起,我不明白你的问题。 – BenM

+0

有一个函数'checkTime(i){}',其中有一个返回。我真的不明白它的作用。 – Ezhno

1
dayNames = ["DOM", "LUN", "MAR", "MER", "GIO", "VEN", "SAB"], 

dayNames[date.getDay()] 

显示一天中的字符串。

看看这里看个人工作示例 https://fiddle.sencha.com/#view/editor&fiddle/1kfh

+0

日的名字是星期日,星期一...对不起,但即时通讯意大利 –

0

使用下面的代码并检查它。 HTML

<div id="time"></div> 
    <div id="day"></div> 

的Javascript

(function() { 
    function checkTime(i) { 
     return (i < 10) ? "0" + i : i; 
    } 

    function startTime() { 
    var today = new Date(), 
    ndays = [ 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' ] 
    h = checkTime(today.getHours()), 
    m = checkTime(today.getMinutes()); 
    s = checkTime(today.getSeconds()); 
    dn = today.getDay(), 

    document.getElementById('time').innerHTML = h + ":" + m + ":" + s; 
    var d=ndays[dn]; 
    document.getElementById('day').innerHTML=d; 
    t = setTimeout(function() { 
    startTime() 
     }, 500); 
    } 
    startTime(); 
})(); 
相关问题