JS灯泡在白天开/关

问题描述 投票:0回答:1

我正在使用JavaScript,最近碰到了if语句。我的问题是,应根据一天中的时间打开或关闭灯泡。因此,如果时间等于或大于10且小于或等于15.00,则该时间将打开,否则其时间将关闭。由于某种奇怪的原因,它不会从关闭状态切换。这是mycode:

<!DOCTYPE html>
<html>
<body>
<img id="myImage" onload="changeImage()" src="pic_bulboff.gif" width="100" height="180">
<script>
var image = document.getElementById('myImage');
var hour = now.getHours();
function changeImage() {
if (hour >= 10 && <= 15) {
image.src = "pic_bulbon.gif";
} 
else {
image.src = "pic_bulboff.gif";
}
}
</script>
</body>
</html>
javascript if-statement time conditional-statements light
1个回答
0
投票

所以您做错了一些事情:

  1. 如果要使用日期,首先需要声明一个var,其值为new Date。您可以了解有关here

  2. 的更多信息
  3. 您的if语句有两个错误

    故障1:在(hour >= 10 && <= 15)之后忘记设置[15]的&&,则需要注意。正确的方法是(hour >= 10 && hour <= 15)

    故障2:是,如果您使用&&,则意味着两个条件都必须为真。这不是您想要的。您想使用||表示或。 hour >= 10为true或hour >= 15

  4. 另外,您需要执行函数,否则将无法正常工作,并且由于使用方法而无法在img上进行加载。但是,您可以通过将changeImage();置于func下方来运行它。

var image = document.getElementById('myImage');
var date = new Date();
var hour = date.getHours();

function changeImage() {
if (hour >= 10 || hour <= 15) {

image.src = "pic_bulbon.gif";
} 
else {

image.src = "pic_bulboff.gif";

}
}

changeImage();

© www.soinside.com 2019 - 2024. All rights reserved.