캘린더를 생각하면보기가 좋아 보인다. 각 dayHolder에는 data-date 속성이 있습니다. 그런 다음 datePicker 캘린더에서 fromDate와 untilDate 중 하나를 선택하면됩니다. 그 다음에 fromDate와 untilDate 사이에 며칠을 계산하고 나중에 내 자신의 캘린더에서 내 fromDate를 찾고이 상태를 작성한 다음 다음 날을 찾아서 그 상태를 쓰고 도달 할 때까지 계속합니다. 내 약속 날짜.jQuery 다음 5 형제
가장 좋은 방법은 무엇입니까? 데이터 - 날짜가있는 각 dayDiv를 찾기가 무겁다.
그래서 나는 지금 이런 식으로 일을했다 :var fromDate = new Date(calenderStatus.fromDate.substring(0, 10));
var untilDate = new Date(calenderStatus.untilDate.substring(0, 10));
var days = 0;
if (fromDate <= untilDate) {
var smallDate = new Date(fromDate.getFullYear(), fromDate.getMonth(), fromDate.getDate(), 0, 0, 0, 0);
var maxDays = new Date(untilDate.getFullYear(), untilDate.getMonth(), untilDate.getDate(), 0, 0, 0, 0);
days = (maxDays - smallDate)/(1000 * 60 * 60 * 24);
}
if (days > 0) {
var dayHolder = $(".dayHolder[data-date='"+ calenderStatus.fromDate +"']");
for (var i = 0; i < days; i++) {
//do something with dayHolder
dayHolder = dayHolder.next('.dayHolder');
}
HTML :
<div class="dayHolder ui-grid-a" data-changeable="true" data-date="2013-06-24">
<div class="dayHolder ui-grid-a" data-changeable="true" data-date="2013-06-25">
<div class="dayHolder ui-grid-a" data-changeable="true" data-date="2013-06-26">
'향후 5 sibilings'를 찾으려면'시도 $ (이) .nextAll ('LT (5)') ' –
좋은 일했다! 발견 된 이유 : lt()는 jQuery 확장이며 CSS 사양의 일부가 아니기 때문에 lt()는 네이티브 DOM querySelectorAll() 메서드에서 제공하는 성능 향상을 이용할 수 없습니다. 최신 브라우저의 성능을 높이려면 대신 $ ("your-pure-css-selector"). slice (0, index)를 사용하십시오. – thatsIT