簡體   English   中英

Javascript:根據時間獲取問候消息

[英]Javascript: Getting greeting messages according to time

我正在嘗試根據時間顯示問候消息。

為此,我創建了日期對象並獲取小時數並顯示每條消息,但由於某些錯誤,我沒有根據時間收到問候消息。 誰能幫幫我?

代碼:

<!DOCTYPE html>
<html>
<head>
    <title>trail6</title>
</head>
<body>

    <p id="demo"></p>

    <script>

    var today = new Date()
    var curHr = today.getHours()

    if (curHr >= 0 && curHr < 6) {
        document.getElementById("demo").innerHTML = 'What are you doing that early?';
    } else if (curHr >= 6 && curHr <= 12) {
        document.getElementById("demo").innerHTML = 'Good Morning';
    } else if (curHr >= 12 && curHr < 17) {
        document.getElementById("demo").innerHTML = 'Good Afternoon';
    } else {
        document.getElementById("demo").innerHTML = 'Good Evening';
    }

</script>

</body>
</html> 

所以你需要把你的一天分成4 組,每組 6 小時,從0開始......

讓我們數學...

hour / 24 * 4的結果轉換為消息數組索引

 var greet = [ 'What are you doing that early?', 'Good Morning', 'Good Afternoon', 'Good Evening' ][ parseInt(new Date().getHours() / 24 * 4) ]; document.getElementById("demo").innerHTML = greet;
 <div id=demo></div>

<!DOCTYPE html>
<html>
<head>
    <title>trail6</title>
</head>
<body>

    <p id="demo"></p>

    <script>

    var today = new Date()
    var curHr = today.getHours()

    if (curHr >= 0 && curHr < 6) {
        document.getElementById("demo").innerHTML = 'What are you doing that early?';
    } else if (curHr >= 6 && curHr < 12) {
        document.getElementById("demo").innerHTML = 'Good Morning';
    } else if (curHr >= 12 && curHr < 17) {
        document.getElementById("demo").innerHTML = 'Good Afternoon';
    } else {
        document.getElementById("demo").innerHTML = 'Good Evening';
    }

</script>

</body>
</html> 

我在你的前 12 個之前去掉了 = 符號,否則你的代碼會正確執行。 並向我展示下午好。 我控制台記錄了它,它工作正常並相應地顯示。 你所在的地方一定是中午。 因為這是您的代碼在修復之前可能會中斷的唯一方法。 很高興能夠回答你的問題。

對我來說很好用...

 <!DOCTYPE html> <html> <head> <title>trail6</title> </head> <body> <p id="demo"></p> <script> var today = new Date() var curHr = today.getHours() if (curHr >= 0 && curHr < 6) { document.getElementById("demo").innerHTML = 'What are you doing that early?'; } else if (curHr >= 6 && curHr <= 12) { document.getElementById("demo").innerHTML = 'Good Morning'; } else if (curHr >= 12 && curHr < 17) { document.getElementById("demo").innerHTML = 'Good Afternoon'; } else { document.getElementById("demo").innerHTML = 'Good Evening'; } </script> </body> </html>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM