【问题标题】:How to add class if content date is today?如果内容日期是今天,如何添加课程?
【发布时间】:2019-02-24 02:04:39
【问题描述】:

我的网站上有一个日程安排日历,并希望通过使用 css 添加红色边框(只是一个示例)使当天从其他日子中脱颖而出。我可能需要使用 JavaScript 来确定内容是否是当前日期。我一直在尝试这样做,但大多数指南都使用数据日期,所以这让我卡住了。

html 输出如下所示

<span class="date-display-single" property="dc:date" datatype="xsd:dateTime" content="2019-02-28T11:30:00+01:00">28.02</span>

如果 content="2019-02-28T11:30:00+01:00" 是今天,我如何添加一个类。

谢谢。

【问题讨论】:

  • 所以你的意思是你想通过添加 css 在日历中突出显示今天的日期?
  • 是的 Lolpez,这几乎就是我想要实现的目标。
  • span的内容不是完整的日期,你真的要使用content属性吗?
  • 注意拼写 JavaScript。 javascriptisnotjava.com

标签: javascript date


【解决方案1】:

您可以使用Date 查找当前日期和月份,这是一个非常有价值的工具。 if 语句检查以确保日期和月份为 mm/dd 格式。然后您可以使用DOM 来获取您的html 元素的值(innerHTML)。最后,您可以使用.className 将您想要的类添加到元素中。

var d = new Date();
var month = d.getMonth() + 1; //.getMonth() is 0-11
var day = d.getDate();

if (day < 10) {
  day = '0' + dd;
}

if (month < 10) {
  month = '0' + month;
}

if (document.getElementById("day").innerHTML == `${day}.${month}`) {
  document.getElementById("day").className += " today";
}
.today {
  border: 2px solid red;
}
&lt;span class="date-display-single" id="day" property="dc:date" datatype="xsd:dateTime" content="2019-02-28T11:30:00+01:00"&gt;23.02&lt;/span&gt;

【讨论】:

  • @jan 没问题。您可能需要稍微更改我的代码。如果它对您有用,请确保接受答案,以便其他人知道它也有效
  • 谢谢,id 确实与你的代码 sn-p 一起工作,但问题是我的 html 只呈现 span 类,而不是作为 Id 类。无论如何是针对跨度而不是id。
  • 我更新了我的 sn-p 以适用于您的代码。只需将 id 添加到您的元素。
  • 好的,我在这里工作了jsfiddle.net/cprtkhmd,非常感谢
  • @jan 没问题。祝你好运!
猜你喜欢
  • 1970-01-01
  • 2017-01-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-20
  • 2021-12-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多