根据日期重定向到不同的链接

时间:2014-11-26 13:55:57

标签: javascript date redirect

我做了一些研究,但我找不到我想要的东西。

基本上,我只想根据特定日期更改重定向。这是一个出现日历,因此用户将点击"查看我们的出现日历"链接,并根据日期(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和年/月/日/小时/秒/毫秒。

我很抱歉,如果这很容易做到,而且我错过了一些明显的东西。但你通过询问来学习......

2 个答案:

答案 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];

这是出现日历的简单解决方案