我很久以前创建了此函数,该函数显示一周中当前日期网页所需的信息。

从那时起,我没有更改代码,但是现在显示的是前一天的信息(例如,在星期四,它显示了星期三的信息)。

我希望有人可以帮助我找出以下功能的毛病:

$(document).ready(function () {
    var dayOfWeek = new Date().getDay();
    $(".menu").hide();

    if (dayOfWeek > 0 && dayOfWeek <= 5 )
        $("#menu" + dayOfWeek).show();
    else
        $("#menu1").show();
});


任何帮助将非常感激。

更新资料
该功能应该从星期一到星期五带来信息。
在JSFiddle上,它可以很好地运行(https://jsfiddle.net/4rm4swuf/),但是在网页的首页上,它似乎未带来正确的日期。
提要可能有问题吗?
但是,网站上还有另一个页面使用了类似的功能,并且可以正常运行。
在此页面上未带“ Jueves” /星期四
http://latabladegongora.com/index.php

在此页面上显示“ Jueves” /星期四。
http://latabladegongora.com/menu.php

这表明数据应该可以。

有任何想法吗?

谢谢。

最佳答案

JavaScript的Date#getDay()方法返回当日(0-6)的索引,其中星期日是第0天,星期六是第6天。



console.log(['Sun', 'Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat'][new Date().getDay()]);





请仔细注意该规范中的注意事项(重点是我的):


  返回值
  根据当地时间,与给定日期的星期几相对应的整数:0代表星期日,1代表星期一,2代表星期二,依此类推。


它返回的日期将与浏览器中的当前日期匹配。您可以尝试记录new Date()以验证其认为日期是什么。

07-25 22:57
查看更多