在HTML上使用JS设置问候语的麻烦

时间:2017-11-18 20:30:51

标签: javascript html onload

我在HTML页面上从单独的样式表运行JS代码时遇到问题。基本上,我想根据当天的当前时间设置足够的问候消息。我已经搜索了很多方法,但是我试图以这种方式使用它并且我找不到解决这个问题的方法。



window.onload = getGreeting();
    function getGreeting() {
    var time = new Date();
    var curHours = time.getHours();
    if (curHours < 10) {
        document.getElementById("greeting").innerHTML = "Dobro jutro!";
    } if else (curHours < 20) {
        document.getElementById("greeting").innerHTML = "Dobar dan!";
    } if else {
        document.getElementById("greeting").innerHTML = "Dobro vece!";
    }
};
&#13;
<!DOCTYPE html>

<head>
<script type="text/javascript" src="LakaRukaDent.js"></script> 
</head>

<body>
<p id="greeting"></p>
</body>
&#13;
&#13;
&#13;

当我在Chrome中运行HTML时,问候语不会显示。当我在Chrome中按f12时,它会出现&#34; Uncaught SyntaxError:意外的令牌&lt; &#34;但我无法弄清楚它为什么不起作用。我已经检查了通过网络搜索的语法和功能,但考虑到我是JS和HTML的新手,也许它可能是我跳过的一些基本的东西,我不知道。

3 个答案:

答案 0 :(得分:1)

使用static boolean isArmstrong(int number) { boolean isArmNumber = false; int sum = 0; int tempNum = number; while (tempNum > 0) { int r = tempNum % 10; sum = sum + (r*r*r); tempNum = tempNum / 10; } if (sum == number) { isArmNumber = true; } return isArmNumber; } 代替else if。 来自MDN的示例:

if else

答案 1 :(得分:0)

请在下面找到修复程序。 window.onload期望函数引用不返回函数的值,这就是为什么我删除那里的括号。 if else语句也存在语法错误。

&#13;
&#13;
window.onload = getGreeting;
        function getGreeting() {
        var time = new Date();
        var curHours = time.getHours();
        if (curHours < 10) {
            document.getElementById("greeting").innerHTML = "Dobro jutro!";
        } else if (curHours < 20) {
            document.getElementById("greeting").innerHTML = "Dobar dan!";
        } else {
            document.getElementById("greeting").innerHTML = "Dobro vece!";
        }
    };
&#13;
<h1 id="greeting"></h1>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

首先,在分配到getGreeting时从onload删除括号,因为onload接受一个功能。此外,if语句也存在语法错误。它应该是else if而非if else,如此:

&#13;
&#13;
window.onload = getGreeting;
    function getGreeting() {
    var time = new Date();
    var curHours = time.getHours();
    if (curHours < 10) {
        document.getElementById("greeting").innerHTML = "Dobro jutro!";
    } else if (curHours < 20) {
        document.getElementById("greeting").innerHTML = "Dobro dan!";
    } else {
        document.getElementById("greeting").innerHTML = "Dobro vece!";
    }
}
&#13;
<p id="greeting"></p>
&#13;
&#13;
&#13;