我做了一些研究,但我找不到我想要的东西。
基本上,我只想根据特定日期更改重定向。这是一个出现日历,因此用户将点击"查看我们的出现日历"链接,并根据日期(12月1日,2日,3日......),他们将在12月的每一天看到不同的网页。
我认为它可能很简单:
<script language="JavaScript">
var currentDate = new Date().getDate();
if (currentDate = 2014,11,26)
window.location = "http://www.yahoo.com";
else if (currentDate = 2014,11,27)
window.location = "http://www.youtube.com";
else if (currentDate = 2014,10,28)
window.location = "http://www.google.com";
</script>
(我将Google / youtube / etc替换为我的实际链接,但无论它是什么日期,它都会转到第一个链接)
我尝试过不同的日期格式,包括YYYY / MM / DD和年/月/日/小时/秒/毫秒。
我很抱歉,如果这很容易做到,而且我错过了一些明显的东西。但你通过询问来学习......
答案 0 :(得分:1)
您的位置部分是好的。这是你的代码缺乏的比较部分..你可以这样做
var date = new Date() // construct a Date instance
.toISOString() // convert into ISO time
.split('T')[0]; // this will result in "2013-11-26"
if(date == "your date in the format year-month-day here"){
window.location.href = "your url here";
}
答案 1 :(得分:0)
首先,在if语句中,您使用赋值运算符=
而不是比较运算符==
,它总是导致语句为真。接下来,.getDate()
函数仅返回月中的日期作为数字
对于足够的降临日历,您可以像这样使用:
var currentDate = new Date().getDate();
if (currentDate == 26)
window.location = "http://www.yahoo.com";
else if (currentDate == 27)
window.location = "http://www.youtube.com";
else if (currentDate == 28)
window.location = "http://www.google.com";
但实现目标的更好方法是使用数组,使用要重定向到的链接并使用日期来选择链接,因为否则您的代码中有24个if语句。你可以这样做:
var links = ["http://www.yahoo.com", "http://www.youtube.com", "http://www.google.com"];
var currentDate = new Date().getDate();
window.location = links[currentDate-1];
这是出现日历的简单解决方案