【发布时间】:2015-10-12 02:27:36
【问题描述】:
尝试根据嵌套 if/then 语句中的两个变量更改背景图像。我收到第 17 行的语法错误(语法错误:预期表达式,得到 '
我阅读了一些类似主题的帖子,但它们似乎无关紧要,或者我只是不明白在说什么……这只是普通的 JS,没有任何 .js 被引用。应该有吗?没有 jquery 等。
在我的幻想中,时间将传递到此页面并导致在背景中随机显示适合时间的图像(来自一组三个)(例如,夜间访问者会看到三个夜间图像中的一个) .我将其包括在内,以防有人拥有比我在下面拼凑的系统更好的系统。
randomLocale = Math.floor((Math.random() * 10) + 1);
if (randomLocale <= 3 ) {
if (time >= 730 && <= 1830) {
document.body.style.backgroundImage = "url(../images/cloister_daytime_01.png)";
} else if (time >= 2100 && <=530) {
document.body.style.backgroundImage = "url(../images/cloister_night_01.png)";
} else {
document.body.style.backgroundImage = "url(../images/cloister_dusk_01.png)";
}
} else if (randomLocale >= 7) {
if (time >= 730 && <= 1830) {
document.body.style.backgroundImage = "url(../images/cloister_daytime_02.png)";
} else if (time >= 2100 && <=530) {
document.body.style.backgroundImage = "url(../images/cloister_night_02.png)";
} else {
document.body.style.backgroundImage = "url(../images/cloister_dusk_02.png)";
}
} else {
if (time >= 730 && <= 1830) {
document.body.style.backgroundImage = "url(../images/cloister_daytime_03.png)";
} else if (time >= 2100 && <=530) {
document.body.style.backgroundImage = "url(../images/cloister_night_03.png)";
} else {
document.body.style.backgroundImage = "url(../images/cloister_dusk_03.png)";
}
}
【问题讨论】:
-
也许问题在于它需要一个表达式,但得到了 '
-
即使你修复了语法错误,你的代码也不会工作,因为当然时间不可能同时在 2100 之后和 0530 之前。您可能需要将其更改为
time >= 2100 || time <=530之类的东西,如果这就是您的意思的话。 -
嗯,是的,就是这么说的,不是吗。我认为“2200”是在“2100”之后和“0530”之前的时间,如果您不关心日期,只关心滚动的 24 小时时钟?
-
啊,我明白你的意思了,因为我已经完成了页面的其余部分。感谢您指出这一点!
标签: javascript if-statement syntax background-image