2016-11-03 2 views
0

Я создаю календарь, который показывает разные события за данный месяц. Я использую jQuery fullcalendar.jQuery fullcalendar: Как настроить и изменить цвет фона дней, не относящихся к текущему месяцу?

У меня есть определенный цвет для каждого дня месяца.

Для этого я использую следующий код:

dayRender: function (date, cell) { 
    var cellDate = date.format('D'); 
    cell.css('background-color', json_backgrundColor[cellDate]);  
}, 

json_backgrundColor[cellDate] представляет собой массив, который содержит определенный цвет для каждого дня. cellDate - целое число (1 конец конкретного месяца (28/29/30/31)).

Моя проблема заключается в том, что на нее влияют и дни предыдущего месяца и следующего месяца. Они окрашиваются в соответствии со значениями конкретного месяца.

например: - День 29 предыдущего месяца получает цвет фона в 29-й день текущего месяца - 1-й день следующего месяца становится все цвета фона в 1-й день текущего месяца

Смотреть эту картину:

[Example month

Я хочу цвет фона дней от предыдущего/следующего месяца будет белым. (см. отмеченные дни на прикрепленном изображении, они не относятся к конкретному месяцу, и я хочу, чтобы они были с белым фоном)

Кто-нибудь знает, как я могу настроить их и сделать?

+0

Перейдите, какие классы имеют эти ячейки, и если есть какая-либо разница между ячейками в течение дней в текущем и других месяцах. – CBroe

+0

Я думаю, я должен написать в javascript 2 «if» s. деньRender: функция (дата, ячейка) { var cellDate = date.format ('D'); if (date lastDayOfCurrentMonth) { cell.css ('background-color', white); } else { cell.css ('background-color', json_backgrundColor [cellDate]); } }, Проблема в том, что я не знаю, как записать ее в javascript. может кто-нибудь помочь? – codingnighter2000

+0

Нет. Один, если он проверяет класс ячеек. – CBroe

ответ

0

Попробуйте следующее: .fc-other-month { background-color: red; } `

+0

Проверьте это: https://jsfiddle.net/Venkatachalam_Perisetla/hzq47kbg/ – Venkatachalam

+0

благодарит за ответ. но это не работает для меня.«dayRender: function» в части javascript перезаписывает его. – codingnighter2000

+0

$ ('td.fc-other-month'). Prop ('disable', true); $ ('td.fc-other-month'). AddClass ('fc-state-disabled'); – Venkatachalam

0

Попробуйте это:

.fc-other-month{ 

цвет фона: красный; }

Нажмите здесь [https://jsfiddle.net/Venkatachalam_Perisetla/hzq47kbg/][1]

+0

Вам стоит остановиться на «Попробуйте это». Убедитесь, что вы поняли вопрос (комментарий, если вы этого не сделаете, попросите разъяснения), убедитесь, что вы пришли к решению, которое работает, а затем опубликуйте это решение. Просто угадать, что может быть решением, недостаточно. Пока мы на нем, не забудьте правильно отформатировать ваши ответы и добавить содержательное описание того, почему ваш ответ решает проблему OP. И не отправляйте более одного ответа с тем же решением. Взгляните на [Как написать хороший ответ?] (Http://stackoverflow.com/help/how-to-answer). Благодаря! –

1

Клетки, которые выходят за пределы текущего месяца получить класс fc-other-month - так все, что вам нужно сделать, должно быть, чтобы проверить класс, и работать только на клетке, если она Безразлично У него есть:

dayRender: function(date, cell) { 
    if(!cell.hasClass('fc-other-month')) { 
    cell.css('background-color', 'blue'); // or whatever 
    } 
} 
+0

спасибо! это работает для меня! Благодарю за помощь! – codingnighter2000

Смежные вопросы