我在一个网页上工作,我有这个功能,这是显示一天的图片的父网站
function LoadPage() {
var today = new Date();
var yyyy = today.getFullYear();
var mm = today.getMonth()+ 1;
var dd = today.getDate();
var url="http://myparentsite"+yyyymmdd+"/image.jpg";
document.getElementById("img").setAttribute("src",url);
}
当天的图片通常设置在早上,所以我在午夜到早上7-8点之间遇到了问题,在这段时间内,浏览器会显示"?““找不到图像”。如何设置才能显示前一天的图像?我试过了
var dd2 = today.getDate() -1;
var url2="http://myparentsite"+yyyymmdd2+"/image.jpg";
但我不知道如何在函数和Html中处理它。
发布于 2012-01-24 08:46:57
简单的答案是让父站点引用一个恒定的图像位置,当您有一个新的每日图像时,然后用新的图像覆盖该图像,并将旧的每日图像存档。
<img src='http://myparentsite/imageOfTheDay.jpg'/>
否则,您可以检查错误并将其设置为昨天的图像
document.getElementById("img").onError = function() {
var dd2 = today.getDate() -1;
var url2="http://myparentsite"+yyyymmdd2+"/image.jpg";
document.getElementById("img").setAttribute("src",url2);
}
或者检查请求的日期并确定要显示的图像
var now = new Date();
var now_utc_hour = now.getUTCHours();
url = "http://myparentsite"+yyyymmdd+"/image.jpg";
if( now_utc_hour > 7 && now_utc_hour < 8 ) "http://myparentsite"+yyyymmdd2+"/image.jpg";
document.getElementById("img").setAttribute("src",url);
发布于 2012-01-24 08:34:02
基本上,您需要处理图像上的事件。
document.getElementById("img").onError = function() {
// the image didn't load properly, change the src attribute
document.getElementById("img").setAttribute("src", url2);
}
document.getElementById("img").setAttribute("src",url);
发布于 2014-07-27 19:43:45
试试这个:
<img src="http://myparentsite/imageOfTheDay.jpg" alt="" onerror="this.src='http://myparentsite/alternateImageOfTheDay.jpg'"/>
-Arpit
https://stackoverflow.com/questions/8980563
复制相似问题