Javascript 一年中每天更改图像(365天)

Javascript 一年中每天更改图像(365天),javascript,Javascript,我需要一些代码方面的帮助,有366个图片需要更改,名为001.jpg,002.jpg。。。366.jpg。它得到了日期,并把它的图片。代码可以工作,但我无法将其输出到img标记中 <html> <head> <script type="text/javascript"> var firstJan = Math.floor((new Date().setFullYear(new Date().getFullYear(),0,1))/86400000); var

我需要一些代码方面的帮助,有366个图片需要更改,名为001.jpg,002.jpg。。。366.jpg。它得到了日期,并把它的图片。代码可以工作,但我无法将其输出到img标记中

<html>
<head>
<script type="text/javascript">

var firstJan = Math.floor((new Date().setFullYear(new Date().getFullYear(),0,1))/86400000);
var today = Math.ceil((new Date().getTime())/86400000);
var dayOfYear = today-firstJan;

var bgdImage;
if((dayOfYear+'').length == 1)
bgdImage = '00'+dayOfYear+'.jpg';
else if((dayOfYear+'').length == 2)
bgdImage = '0'+dayOfYear+'.jpg';
else
bgdImage = dayOfYear+'.jpg';

document.getElementById('bla').src = "bgdImage";
</script>

</head>
<body onload=img()>

<img id="bla" width="100%" height="100%" />

</body>
</html>

var firstJan=Math.floor((新日期().setFullYear(新日期().getFullYear(),0,1))/86400000);
var today=Math.ceil((new Date().getTime())/86400000);
var dayOfYear=今天1月1日;
var bgdImage;
如果((dayOfYear+“”).length==1)
bgdImage='00'+dayOfYear+'.jpg';
else if((dayOfYear+“”).length==2)
bgdImage='0'+dayOfYear+'.jpg';
其他的
bgdImage=dayOfYear+'.jpg';
document.getElementById('bla').src=“bgdImage”;

去掉双引号:

document.getElementById('bla').src = bgdImage;

代码中的一个问题似乎是将图像的src设置为字符串“bgdImage”,而不是变量。尝试用以下内容替换该行:

document.getElementById('bla').src = bgdImage;
更新


看起来您正在尝试在设置
img
标记之前运行代码。尝试将脚本移动到
img
标记之后,或者设置一个超时,以便在页面完全呈现后执行它。

如我在初始注释中所说,将代码放入您在
中调用的函数
中。我还从src的输出语句中删除了引号
document.getElementById('bla').src=bgdImage
bgdImage
是您的变量,将其置于引号中
“bgdImage”
只是一个包含文本bgdImage的字符串

<html>
<head>
<script type="text/javascript">

function img()
{
var firstJan = Math.floor((new Date().setFullYear(new Date().getFullYear(),0,1))/86400000);
var today = Math.ceil((new Date().getTime())/86400000);
var dayOfYear = today-firstJan;

var bgdImage;
if((dayOfYear+'').length == 1)
bgdImage = '00'+dayOfYear+'.jpg';
else if((dayOfYear+'').length == 2)
bgdImage = '0'+dayOfYear+'.jpg';
else
bgdImage = dayOfYear+'.jpg';

document.getElementById('bla').src = bgdImage;
}
</script>

</head>
<body onload="javascript:img();">

<img id="bla" width="100%" height="100%" />

</body>
</html>

函数img()
{
var firstJan=Math.floor((新日期().setFullYear(新日期().getFullYear(),0,1))/86400000);
var today=Math.ceil((new Date().getTime())/86400000);
var dayOfYear=今天1月1日;
var bgdImage;
如果((dayOfYear+“”).length==1)
bgdImage='00'+dayOfYear+'.jpg';
else if((dayOfYear+“”).length==2)
bgdImage='0'+dayOfYear+'.jpg';
其他的
bgdImage=dayOfYear+'.jpg';
document.getElementById('bla').src=bgdImage;
}

将代码包装在onload标记中使用的函数img()中?@Johnny Sooter您是否检查了DOM以查看img上的src是否设置正确?另外,您是否有任何JavaScript错误?@Jonny Scooter不会将JavaScript内联到HTML的主体中。使用您在问题示例中已经设置的函数ìmg()`会更好。您也可以稍后将该函数外包到一个外部的.js文件中,以分离html和js。这就是我一直以来在@C.O.的想法。这就是我选择您的答案的原因