jquery周日历更改上周和下周按钮到上一天和第二天

时间:2013-03-06 09:21:52

标签: jquery-week-calendar

我在我的申请中使用以下日历 jquery-week-calendar

我想更改上一个和下一个按钮,这样当点击它时,除了上一周和下周之外,它会转到上一天和第二天。

我是jquery的新手,我能够找到导致这一点的代码的一部分。

  prevWeek : function() {
     //minus more than 1 day to be sure we're in previous week - account for daylight savings or other anomolies
     var newDate = new Date(this.element.data("startDate").getTime() - (MILLIS_IN_WEEK / 6));
     this._clearCalendar();
     this._loadCalEvents(newDate);
  },

  /*
   * Go to the next week relative to the currently displayed week
   */
  nextWeek : function() {
     //add 8 days to be sure of being in prev week - allows for daylight savings or other anomolies
     var newDate = new Date(this.element.data("startDate").getTime() + MILLIS_IN_WEEK + (MILLIS_IN_WEEK / 7));
     this._clearCalendar();
     this._loadCalEvents(newDate);
  }



   _loadCalEvents : function(dateWithinWeek) {

     var date, weekStartDate, endDate, $weekDayColumns;
     var self = this;
     var options = this.options;
     date = dateWithinWeek || options.date;
     weekStartDate = self._dateFirstDayOfWeek(date);
     weekEndDate = self._dateLastMilliOfWeek(date);

     options.calendarBeforeLoad(self.element);

     self.element.data("startDate", weekStartDate);
     self.element.data("endDate", weekEndDate);

     $weekDayColumns = self.element.find(".wc-day-column-inner");

     self._updateDayColumnHeader($weekDayColumns);

     //load events by chosen means
     if (typeof options.data == 'string') {
        if (options.loading) options.loading(true);
        var jsonOptions = {};
        jsonOptions[options.startParam || 'start'] = Math.round(weekStartDate.getTime() / 1000);
        jsonOptions[options.endParam || 'end'] = Math.round(weekEndDate.getTime() / 1000);
        $.getJSON(options.data, jsonOptions, function(data) {
           self._renderEvents(data, $weekDayColumns);
           if (options.loading) options.loading(false);
        });
     }
     else if ($.isFunction(options.data)) {
        options.data(weekStartDate, weekEndDate,
              function(data) {
                 self._renderEvents(data, $weekDayColumns);
              });
     }
     else if (options.data) {
           self._renderEvents(options.data, $weekDayColumns);
        }

     self._disableTextSelect($weekDayColumns);


  }

1 个答案:

答案 0 :(得分:2)

我希望您在日历中添加其他功能:您可以使用以下方式执行此操作:

 prevWeek : function() {

     var newDate = new Date(this.element.data("startDate"));
     newDate = this._addDays(newDate , -1);
     this._clearCalendar();
     this._loadCalEvents(newDate);
  },

  nextWeek : function() {

     var newDate = new Date(this.element.data("startDate"));
     newDate = this._addDays(newDate , 1);
     this._clearCalendar();
     this._loadCalEvents(newDate);
  }