如何在 JS 变量中设置 URL "img src="?



我有一个if-else语句,它根据一天中的时间提供各种图像URL,每个"else"都有一个图像的URL。我希望我能有一个 img src,其中源从该 if-else 语句加载,本质上是在一天中的不同时间加载不同的图片。

我为一天中的不同时间设置了变量,然后是一个从这些时间中进行选择的 if-else 语句。以下是最小可重现样品:

<body onload="load()">
<p>Test:</p>
<img src="https://i.imgur.com/4LtRreH.png" id="image" name="image"/>
<script type="text/javascript">
const now = new Date();
const slot1 = now.getHours() === 14;
const slot2 = now.getHours() === 15;
const imageOne = "https://i.imgur.com/5IaY11U.png";
const imageTwo = "https://i.imgur.com/ANdRs50.png";
function load() {
document.getElementById('image').src= imgPick();
}
function imgPick() {
if (slot1) {
imageOne;
} else if (slot2) {
imageTwo;
}
};
</script>
</body>

为简单起见,我刚刚从发布时添加了插槽。

我的目标是将正文中的 img src 替换为我的 if-else 语句中的 URL。因此,由于我在下午 2:32 发布此内容,因此它应该加载 imageOne。现在,它一直默认为正文><中给出的链接。>

如果有人能指出我正确的方向,我将不胜感激。

只需返回值

function imgPick() {
if (slot1) {
return imageOne;
} else if (slot2) {
return imageTwo;
}
}
function imgPick() {
const now = new Date();
const slot1 = now.getHours() === 14;
const slot2 = now.getHours() === 15;
const imageOne = "https://i.imgur.com/5IaY11U.png";
const imageTwo = "https://i.imgur.com/ANdRs50.png";
if (slot1) {
return imageOne;
} else if (slot2) {
return imageTwo;
}

最好将常量输入到函数中,以便在执行函数后销毁它们,并且在全局范围内不会浪费内存。

最新更新