2013-03-06 2 views
1

Я использую следующий календарь в моем приложении jquery-week-calendarJQuery недели календарь изменение предыдущей неделя и следующая кнопка недели ПРЕД день и на следующий день

Я хочу изменить пред и следующую кнопку таким образом, что при щелчке она идет к предыдущему и следующему дню, кроме предыдущего и следующей недели.

Я новичок в 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); 


    } 

ответ

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); 
    } 
Смежные вопросы