我想在我的网站上添加一项功能,根据当天更改显示的图片。因为我是一个新手,所以我无法完全绕过它。我的图像存储在images / week2 / image_day_4中。我将尝试使用几个递增变量来访问图像值,因此如果日期是第2周的第4天,则代码应该读取类似
的内容"images/week_" + week + "/image_day_" + day;
自会员资格开始以来,我每天都会增加。
有更好的方法吗?
答案 0 :(得分:2)
因此,如果我理解正确的话,每天在一段长时间的会员资格中会显示出不同的形象。为什么你需要一周呢?一种解决方案是仅跟踪总天数并创建关键值对的基本JS对象。键可以是天数,值可以是图像的URL。例如:
JS用法:
var obj = {
key1: value1,
key2: value2
};
JS示例:
var membershipImages = {
1: "images/day1.jpg",
2: "images/thatThing.png"
};
然后在计算用户的会员日之后,您需要做的只是提取网址:
someObject.setSomeProperty(membershipImages.getProperty("1"));
答案 1 :(得分:1)
根据this documentation和此thread,您可以使用:
function getWeekNumber(d) {
// Copy date so don't modify original
d = new Date(+d);
d.setHours(0, 0, 0);
// Set to nearest Thursday: current date + 4 - current day number
// Make Sunday's day number 7
d.setDate(d.getDate() + 4 - (d.getDay() || 7));
// Get first day of year
var yearStart = new Date(d.getFullYear(), 0, 1);
// Calculate full weeks to nearest Thursday
var weekNo = Math.ceil((((d - yearStart) / 86400000) + 1) / 7)
// Return array of year and week number
return weekNo;
}
var path = "images/week_" + getWeekNumber(new Date()) + "/image_day_" + new Date().getDay();
alert(path);
编辑:可以轻松转换new Date()
语句以使用成员资格开始日期。