Javascript 一年中每天更改图像(365天)
我需要一些代码方面的帮助,有366个图片需要更改,名为001.jpg,002.jpg。。。366.jpg。它得到了日期,并把它的图片。代码可以工作,但我无法将其输出到img标记中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
<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.的想法。这就是我选择您的答案的原因