php - फ़ुल कैलेंडर, चालू करें चालू करें बटन सक्रिय करें




calendar fullcalendar (4)

आज के महीने चालू माह के लिए अक्षम है। जब आप अगले या पिछले महीने जाते हैं तो यह सक्रिय रूप में दिखाई देता है (जब आज का टुडे बटन नियंत्रण चालू होता है तो वर्तमान माह में जाता है)।

निम्नलिखित कोड में मैं दिखा रहा हूं कि वर्तमान माह के लिए आज बटन सक्रिय कैसे करें।

 function makeTodaybtnActive()
      {
         $('#calendar button.fc-today-button').removeAttr('disabled');
         $('#calendar button.fc-today-button').removeClass('fc-state-disabled');
       }

(जहां # कैलेंडर्स पूर्ण कैलेंडर आईडी है)
इस फ़ंक्शन को जब कैलेंडर लोड कहते हैं

 $(window).load(function() {
    makeTodaybtnActive();
 });

eventRender समारोह में भी

   $('#calendar').fullCalendar({
        eventRender: function(event, element) {
          makeTodaybtnActive();
        },
   });

जब कैलेंडर लोड (पृष्ठ लोड) उस समय पहले कोड काम करते हैं और महीने में परिवर्तन करते हैं और वर्तमान माह में जाता है (आज बटन क्लिक करके) तो दूसरा कोड आज बटन सक्रिय बना रहा है


Answers

'आज' बटन स्वचालित रूप से निष्क्रिय हो जाता है जब आज की तारीख गाया गया कैलेंडर क्षेत्र में दिखाई दे रही है क्योंकि 'आज' पर कूदने का कोई मतलब नहीं है यदि यह पहले से ही दिखाई दे रहा है। यदि आप वास्तव में इसे हमेशा सक्षम होना चाहते हैं तो संभव है https://jsfiddle.net/73b7rva6/

document.addEventListener('DOMContentLoaded', function() {
    $('#calendar').fullCalendar({
        eventAfterAllRender: function(view) { /* used this vs viewRender */
            makeTodayButtonActive();
        }
    });

    function makeTodayButtonActive() {
        /* turn off fc-state-disabled class and remove 'disabled' property */
        $('#calendar button.fc-today-button').removeClass('fc-state-disabled').prop('disabled', false);
    }
});

FullCalendar , आज का बटन स्वचालित रूप से अक्षम होता है जब हम आज की तारीख पर हैं नीचे कोड की जांच करें।

$('#calendar').fullCalendar({
    events: [{
        title: 'Event 1',
        start:  moment().add(1, 'h'),
        end: moment().add(2, 'h'),
        allDay: false
    }], 
    header: {
        left: '',
        center: 'prev title next today',
        right: ''
    },
    timezone:'local',
    defaultDate: '2014-11-15',
    editable: false,
    eventLimit: false,
    firstDay: 6,
    defaultView: 'agendaWeek',
});
               
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.8.3/moment.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/2.1.1/fullcalendar.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/2.1.1/fullcalendar.min.js"></script>

<div id="calendar"></div>


आज के महीने चालू माह के लिए अक्षम है। जब आप अगले या पिछले महीने जाते हैं तो यह सक्रिय रूप में दिखाई देता है (जब आज का टुडे बटन नियंत्रण चालू होता है तो वर्तमान माह में जाता है)।

निम्नलिखित कोड में मैं दिखा रहा हूं कि वर्तमान माह के लिए आज बटन सक्रिय कैसे करें।

 function makeTodaybtnActive()
      {
         $('#calendar button.fc-today-button').removeAttr('disabled');
         $('#calendar button.fc-today-button').removeClass('fc-state-disabled');
       }

(जहां # कैलेंडर्स पूर्ण कैलेंडर आईडी है)
इस फ़ंक्शन को जब कैलेंडर लोड कहते हैं

 $(window).load(function() {
    makeTodaybtnActive();
 });

eventRender समारोह में भी

   $('#calendar').fullCalendar({
        eventRender: function(event, element) {
          makeTodaybtnActive();
        },
   });

जब कैलेंडर लोड (पृष्ठ लोड) उस समय पहले कोड काम करते हैं और महीने में परिवर्तन करते हैं और वर्तमान माह में जाता है (आज बटन क्लिक करके) तो दूसरा कोड आज बटन सक्रिय बना रहा है


सभी प्रस्तावित दृष्टिकोण गलत परिणाम दे सकते हैं क्योंकि वे गर्मी / शीतकालीन समय में परिवर्तन नहीं करते हैं। 86'400'000 मिलीसेकंड के निरंतर उपयोग करते हुए दो तिथियों के बीच दिनों की संख्या की गणना करने के बजाय, निम्न के जैसा दृष्टिकोण उपयोग करना बेहतर है:

getDaysDiff = function (dateObject0, dateObject1) {
    if (dateObject0 >= dateObject1) return 0;
    var d = new Date(dateObject0.getTime());
    var nd = 0;
    while (d <= dateObject1) {
        d.setDate(d.getDate() + 1);
        nd++;
    }
    return nd-1;
};




php calendar fullcalendar