如果date大于now,则通过jQuery添加class

时间:2015-01-16 14:52:43

标签: javascript jquery date

HTML:

<div class="date">
    <strong>21</strong>
    <span class="month">Jan</span>
    <strong class="year">15</strong>
    <span class="details"></span>
</div>

JS:

var selectedDate = $('.events-list .date').text();
var now = new Date();
if (selectedDate < now) {
    $('.event').addClass('past');
}

但不要将课程添加到event。我的问题是什么?

2 个答案:

答案 0 :(得分:0)

您必须将字符串单独转换为javascript可以解析的格式,以便从中创建日期对象。像这样http://jsfiddle.net/uew2j1pu/1/

<div class="date">
<strong class="day">5</strong>
<span class="month">Jan</span>
<strong class="year">15</strong>
<span class="details"></span>

脚本:

var day = $('.day').text();
var month = $('.month').text();
var year = $('.year').text();
var fullDate = new Date('20'+year+'-'+month+'-'+day);

var now = new Date();
if (fullDate < now) {
    $('.event').addClass('past');
}

答案 1 :(得分:0)

你说:

  

如果日期大于现在通过jQuery添加类

并在您的代码中说:

if (selectedDate < now) {

也许你应该这样写:

if (selectedDate > now) {

如果这就是你想要的。