Если у меня есть список таких месяцев
<div id="dailyInfo" class="contentInfo">
<ul>
<li>
<a href="#February">Febuary</a>
</li>
<li>
<a href="#March">March</a>
</li>
<li>
<a href="#April">April</a>
</li>
<li>
<a href="#May">May</a>
</li>
<li>
<a href="#June">June</a>
</li>
<li>
<a href="#July">July</a>
</li>
<li>
<a href="#August">August</a>
</li>
<li>
<a href="#September">September</a>
</li>
<li>
<a href="#October">October</a>
</li>
<li>
<a href="#November">November</a>
</li>
</ul>
</div>
Есть ли способ скрыть октябрь до октября? То же самое с ноябрем. Прямо сейчас я комментирую их и переключаю их каждый месяц. Единственная проблема - иногда я опаздываю на несколько дней. Как я могу сделать это автоматически?
Редактировать: я бы хотел, чтобы все элементы li
прошлых месяцев показывались. Только не те месяцы, которые еще не наступили. Как и октябрь и ноябрь
Скрыть каждый месяц после текущего:
$('#dailyInfo li:gt('+((new Date()).getMonth()-1)+')').hide();
Скрыть все, кроме текущего месяца:
$('#dailyInfo li:not(li:eq('+((new Date()).getMonth()-1)+'))').hide();
Скрыть текущий месяц:
$('#dailyInfo li:eq('+((new Date()).getMonth()-1)+')').hide();
adeneo опубликовал отличный ответ, но я подумал, что могу предоставить еще один. Просто ради Пита.
var d = new Date(),
n = d.getMonth();
$(".contentInfo ul li").each(function () {
var $this = $(this),
ID = $(this).index();
if (ID > n) $(this).hide();
});
используйте этот код... он скроет ваш текущий месяц
здесь jsfiddle http://jsfiddle.net/K7Thm/
var currentDate=new Date()
var monthNum=currentDate.getMonth()-1;
$('#dailyInfo ul li').eq(monthNum).hide();