【发布时间】:2018-02-18 16:49:36
【问题描述】:
这是我目前的代码:
var d = new Date();
var time = d.getHours();
var img = new Image();
var img2 = new Image();
var div = document.getElementById('geometry2');
img.onload = function() {
if (time < 12) {
div.appendChild(img);
};
else {
div.appendChild(img2);
}
img.src = 'images/morning.png';
img2.src = 'images/other.png';
我不确定我的错误是什么,但没有一张图片显示。这是它所指的 HTML 元素的代码:
<img src="images/geometry.png" id="geometry2" alt="">
【问题讨论】:
-
不要认为 ;在第一个 if 块是必要的之后。也许它正在“关闭” if,并且 ELSE 永远不会执行并引发编译错误(参见控制台)。脚本在哪里调用?头部? html中的脚本标签?你确定 dom 已经加载了吗?
-
它在一个单独的 JS 文件中
-
好吧,您的事件处理程序可能应该在
div.onload而不是img.onload,并且正如@Pierre 建议的那样,也许它需要在DOM 的其余部分之后加载(即,就在@ 之前987654325@). -
在将图像附加到文档后,您将分配
src的值。当图像被添加到文档中时,它不会有来源。 -
我尝试了所有这些解决方案......仍然没有运气:(
标签: javascript html image frontend web-frontend