基于时间 javascript,创建大约 30 分钟的空白响应
Time based javascript, creating a blank response for approx 30 minutes
首先 - 提前感谢您的帮助。
我有一个基于图像的幻灯片放映,调用 #photo1、2、3。使用 javascript 根据不同的时间更改图像(实际上是图像文件夹,所有图像都具有相同的名称,所以只需更改根文件夹)全天阻塞。 (上午 9 点至上午 11 点、上午 11 点至下午 3 点、下午 3 点至 6 点、下午 6 点至上午 9 点)。以防万一,我将图像存储在保管箱中(这样我的伙伴可以随意更改它们,提供的链接是旧的,目前无法使用)。
这一切似乎都在工作,在更改时间后的前 30 分钟左右接受,它变成空白。然后再次正常工作。
想法?我对 javascript 不是很好,所以如果我做错了,我愿意接受新方法。
Javascript代码:
$(document).ready(function(){
var d = new Date();
var n = d.getHours();
// If time is after 9AM or before 11AM
if (n > 9 && n < 11) {
$("img#photo1").attr("src","https://dl.dropboxusercontent.com/s/324....67l/ad1.jpg?dl=0");
$("img#photo2").attr("src","https://dl.dropboxusercontent.com/s/5i9f....m10z/ad2.jpg?dl=0");
$("img#photo3").attr("src","https://dl.dropboxusercontent.com/s/n7....66/ad3.jpg?dl=0");
}
else if (n > 11 && n < 15) {
$("img#photo1").attr("src","https://dl.dropboxusercontent.com/s/31p....rw3r/ad1.jpg?dl=0");
$("img#photo2").attr("src","https://dl.dropboxusercontent.com/s/h3m....tsqy/ad2.jpg?dl=0");
$("img#photo3").attr("src","https://dl.dropboxusercontent.com/s/zr9....kzja/ad3.jpg?dl=0");
}
else if (n > 15 && n < 18) {
$("img#photo1").attr("src","https://dl.dropboxusercontent.com/s/5li....y2w/ad1.jpg?dl=0");
$("img#photo2").attr("src","https://dl.dropboxusercontent.com/s/no....twr2/ad2.jpg?dl=0");
$("img#photo3").attr("src","https://dl.dropboxusercontent.com/s/ojjn....i1g/ad3.jpg?dl=0");
}
else if (n > 18 || n < 9) {
$("img#photo1").attr("src","https://dl.dropboxusercontent.com/s/kn3ch....s7g0/ad1.jpg?dl=0");
$("img#photo2").attr("src","https://dl.dropboxusercontent.com/s/dhxi5....04/ad2.jpg?dl=0");
$("img#photo3").attr("src","https://dl.dropboxusercontent.com/s/mb51....336/ad3.jpg?dl=0");
}
// runs the code every hour, probably there is a much better way to do this
setTimeout(function(){window.location.reload();}, 3600000)
});
当9点、11点、15点或18点时,您的none个条件会匹配,不会显示任何内容。将条件更改为:
if (n >= 9 && n < 11) {
// ...
}
else if (n >= 11 && n < 15) {
// ...
}
else if (n >= 15 && n < 18) {
// ...
}
else if (n >= 18 || n < 9) {
// ...
}
您排除了 9、11、15 和 18; if 语句选择大于或小于。对于这些数字中的任何一个,您都会得到 undefined。
首先 - 提前感谢您的帮助。 我有一个基于图像的幻灯片放映,调用 #photo1、2、3。使用 javascript 根据不同的时间更改图像(实际上是图像文件夹,所有图像都具有相同的名称,所以只需更改根文件夹)全天阻塞。 (上午 9 点至上午 11 点、上午 11 点至下午 3 点、下午 3 点至 6 点、下午 6 点至上午 9 点)。以防万一,我将图像存储在保管箱中(这样我的伙伴可以随意更改它们,提供的链接是旧的,目前无法使用)。 这一切似乎都在工作,在更改时间后的前 30 分钟左右接受,它变成空白。然后再次正常工作。 想法?我对 javascript 不是很好,所以如果我做错了,我愿意接受新方法。
Javascript代码:
$(document).ready(function(){
var d = new Date();
var n = d.getHours();
// If time is after 9AM or before 11AM
if (n > 9 && n < 11) {
$("img#photo1").attr("src","https://dl.dropboxusercontent.com/s/324....67l/ad1.jpg?dl=0");
$("img#photo2").attr("src","https://dl.dropboxusercontent.com/s/5i9f....m10z/ad2.jpg?dl=0");
$("img#photo3").attr("src","https://dl.dropboxusercontent.com/s/n7....66/ad3.jpg?dl=0");
}
else if (n > 11 && n < 15) {
$("img#photo1").attr("src","https://dl.dropboxusercontent.com/s/31p....rw3r/ad1.jpg?dl=0");
$("img#photo2").attr("src","https://dl.dropboxusercontent.com/s/h3m....tsqy/ad2.jpg?dl=0");
$("img#photo3").attr("src","https://dl.dropboxusercontent.com/s/zr9....kzja/ad3.jpg?dl=0");
}
else if (n > 15 && n < 18) {
$("img#photo1").attr("src","https://dl.dropboxusercontent.com/s/5li....y2w/ad1.jpg?dl=0");
$("img#photo2").attr("src","https://dl.dropboxusercontent.com/s/no....twr2/ad2.jpg?dl=0");
$("img#photo3").attr("src","https://dl.dropboxusercontent.com/s/ojjn....i1g/ad3.jpg?dl=0");
}
else if (n > 18 || n < 9) {
$("img#photo1").attr("src","https://dl.dropboxusercontent.com/s/kn3ch....s7g0/ad1.jpg?dl=0");
$("img#photo2").attr("src","https://dl.dropboxusercontent.com/s/dhxi5....04/ad2.jpg?dl=0");
$("img#photo3").attr("src","https://dl.dropboxusercontent.com/s/mb51....336/ad3.jpg?dl=0");
}
// runs the code every hour, probably there is a much better way to do this
setTimeout(function(){window.location.reload();}, 3600000)
});
当9点、11点、15点或18点时,您的none个条件会匹配,不会显示任何内容。将条件更改为:
if (n >= 9 && n < 11) {
// ...
}
else if (n >= 11 && n < 15) {
// ...
}
else if (n >= 15 && n < 18) {
// ...
}
else if (n >= 18 || n < 9) {
// ...
}
您排除了 9、11、15 和 18; if 语句选择大于或小于。对于这些数字中的任何一个,您都会得到 undefined。