我有一个事件列表,我想自动隐藏不再是最新的事件。这意味着我必须将每个事件的日期与当前日期进行比较。因此,如果今天是23.02.2018,则应隐藏日期为06.01.2018的事件,但应显示日期为08.03.2018的事件。请问有人可以帮助我吗?我迷路了...
var today = new Date();
var date1 = today.getFullYear() + "/" + today.getMonth() + "/" + today.getDate();
var date2 = $(".event").data("date");
date3 = new Date(date1);
date4 = new Date(date2);
if (date3.getTime() > date4.getTime()); {
$(".event").hide();
$(".event").attr("value", "");
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p><strong>EXAPLE</strong></p>
<p>Today is 23.02.2018</p>
<div id="event-list">
<div class="event" data-date="2018/01/06" value="search">06.01.2018 - should be hidden</div>
<div class="event" data-date="2018/02/07" value="search">07.02.2018 - should be hidden</div>
<div class="event" data-date="2018/03/08" value="search">08.03.2018 - should be visible</div>
</div>
答案 0 :(得分:1)
您可以解析adapter.remove(position == 0);
属性以形成有效日期,然后将其与今天进行比较。如果它小于隐藏相应的元素。
使用data-date
迭代匹配选择器的所有元素。阅读更多相关信息here。
jQuery.each()
var today = new Date().getTime();
$("#event-list .event").each(function(){
var eventDate = $(this).attr("data-date");
eventDate = new Date(eventDate).getTime();
if(eventDate < today)
$(this).hide();
})