我最近开始使用Javascript,就像几个小时前一样,我无法弄清楚为什么它仍然显示它应该不在我的网站上的文本。 Dreamweaver说没有错误,但必须有..
<script type="text/javascript">
var day = new Date();
var hr = day.getHours();
if((hr == 1) || (hr == 2) || (hr == 3) || (hr == 4) || (hr == 5) || (hr == 6) || (hr == 7) || (hr == 8) || (hr == 9)); {
document.write("Paragraph one stack example");
}
if(hr == 10) {
document.write("P2 stack ex");
}
if((hr == 11) || (hr == 12) || (hr == 13)); {
document.write("P3 stack ex.");
}
</script>
答案 0 :(得分:1)
从您的代码中,稍微重新格式化:
if((hr == 1) || ... || (hr == 9)); {
document.write("Paragraph one stack example");
}
摆脱那个分号,它使整个if
位无关紧要。
它的含义是:
if((hr == 1) || ... || (hr == 9))
;
{
document.write("Paragraph one stack example");
}
换句话说,
hr
是1-9,则不执行任何操作。hr
的值,输出&#34;第一段堆栈示例&#34;。您对if
的{{1}}语句也存在同样的问题。
更好的解决方案#34; 1到9&#34;顺便说一句,11/12/13
声明是:
if
您可以进一步清理代码,因为所有条件都是互斥的:
if((hr >= 1) && (hr <= 9)) {
document.write("Paragraph one stack example");
}
如果您已经确定<script type="text/javascript">
var day = new Date();
var hr = day.getHours();
if ((hr >= 1) || (hr <= 9)) {
document.write("Paragraph one stack example");
} else if (hr == 10) {
document.write("P2 stack ex");
} else if ((hr >= 11) && (hr <= 13)) {
document.write("P3 stack ex.");
}
</script>
hr
,10
是否等于4
还有一点要点。因此,您可以使用else if
。
答案 1 :(得分:1)
代码有效,但放入
时出错了在if表达式的末尾
如果你删除这一切都会正常工作!
var day = new Date();
var hr = day.getHours();
if((hr == 1) || (hr == 2) || (hr == 3) || (hr == 4) || (hr == 5) || (hr == 6) || (hr == 7) || (hr == 8) || (hr == 9)) {
document.write("Paragraph one stack example");
}
if(hr == 10) {
document.write("P2 stack ex");
}
if((hr == 11) || (hr == 12) || (hr == 13)) {
document.write("P3 stack ex.");
}