使用jQuery标记适当的星期里/天

Using jQuery flag appropriate li/day of the week

本文关键字:jQuery 使用      更新时间:2023-09-26

我有一个无序的商店营业时间列表,如下所示:

<ul class="days">
    <li><span>Mo.</span> <strong>11:00am - 12:00am</strong></li>
    <li><span>Tu.</span> <strong>11:00am - 12:00am</strong></li>
    <li><span>We.</span> <strong>11:00am - 12:00am</strong></li>
    <li><span>Th.</span> <strong>11:00am - 1:00am</strong></li>
    <li><span>Fr.</span> <strong>11:00am - 2:00am</strong></li>
    <li><span>Sa.</span> <strong>11:00am - 2:00am</strong></li>
    <li><span>Su.</span> <strong>11:00am - 12:00am</strong></li>
</ul>

我正试图将类名'currDay'添加到与今天日期对应的li。这看起来应该是超级简单和工作-但唉,它不是:)这是我使用的简单jq:

$(".days li:nth-child("+new Date().getDay()+")").addClass('currDay');

我没有得到任何错误,只是没有添加到dom。谢谢!

根据http://api.jquery.com/nth-child-selector/,

因为jQuery对:n -选择器的实现严格地派生自CSS规范,所以n的值是"以1为索引"的,这意味着计数从1开始。

由于"Sunday"的值为0,因此没有出现任何内容。您需要添加一个,或者使用eq。试试这个:

$(".days li:eq("+new Date().getDay()+")").addClass('currDay');
http://jsfiddle.net/3WVk5/

或者保持当前的顺序,计算(new Date().getDay() + 6) % 7;

http://jsfiddle.net/3WVk5/1/