सवाल किसी तारीख को उलटी गिनती कैसे करें


मैं सोच रहा हूं कि कोई मेरी मदद कर सकता है या नहीं। यहां और वेब पर अथक रूप से खोज करने के घंटों के बाद मुझे jquery का उपयोग करके एक साधारण उलटी गिनती नहीं मिल रही है। मैं किसी भी प्रकार की प्लगइन का उपयोग किसी तारीख से उलटी गिनती के लिए सिर्फ एक साधारण jQuery कोड का उपयोग नहीं करना चाहता हूं। मैंने नीचे यह कोड ढूंढने में कामयाब रहा है। लेकिन इस कोड के साथ भी मेरी वेबसाइट में इसे कुछ भी प्रकट नहीं होता है। मैंने jquery.com से jquery फ़ाइल जोड़ा और उचित divs के साथ जोड़ा counter आईडी और कुछ भी नहीं। यदि कोई मुझे समझा सकता है या दिखा सकता है कि किसी फ़ंक्शन में एक साधारण उलटी गिनती कैसे करें जो दिनांक प्रारूप में लेता है और उलटी गिनती देता है तो मैं सहायता की सराहना करता हूं।

var end = new Date('02/19/2012 10:1 AM');

    var _second = 1000;
    var _minute = _second * 60;
    var _hour = _minute * 60;
    var _day = _hour * 24;
    var timer;

    function showRemaining() {
        var now = new Date();
        var distance = end - now;
        if (distance < 0) {

            clearInterval(timer);
            document.getElementById('countdown').innerHTML = 'EXPIRED!';

            return;
        }
        var days = Math.floor(distance / _day);
        var hours = Math.floor((distance % _day) / _hour);
        var minutes = Math.floor((distance % _hour) / _minute);
        var seconds = Math.floor((distance % _minute) / _second);

        document.getElementById('countdown').innerHTML = days + 'days ';
        document.getElementById('countdown').innerHTML += hours + 'hrs ';
        document.getElementById('countdown').innerHTML += minutes + 'mins ';
        document.getElementById('countdown').innerHTML += seconds + 'secs';
    }

    timer = setInterval(showRemaining, 1000);

44
2018-02-17 20:44


मूल


आपके डीआईवी को आईडी "उलटी गिनती" की आवश्यकता है, न कि "काउंटर"। - Gregor
@ ग्रेगोर जो एक टाइपिंग गलती थी "काउंटर" - bammab
क्या आप गतिशील तारीख के साथ, मुझसे पूछे गए एक ही सवाल बता सकते हैं। यू यहाँ हार्डकोड तारीख दे रहे हैं, मुझे गतिशील तारीख चाहिए - Khushbu_sipl


जवाब:


यह एक सामान्य जावास्क्रिप्ट के रूप में ठीक काम कर रहा है।

<script>
var end = new Date('02/19/2012 10:1 AM');

    var _second = 1000;
    var _minute = _second * 60;
    var _hour = _minute * 60;
    var _day = _hour * 24;
    var timer;

    function showRemaining() {
        var now = new Date();
        var distance = end - now;
        if (distance < 0) {

            clearInterval(timer);
            document.getElementById('countdown').innerHTML = 'EXPIRED!';

            return;
        }
        var days = Math.floor(distance / _day);
        var hours = Math.floor((distance % _day) / _hour);
        var minutes = Math.floor((distance % _hour) / _minute);
        var seconds = Math.floor((distance % _minute) / _second);

        document.getElementById('countdown').innerHTML = days + 'days ';
        document.getElementById('countdown').innerHTML += hours + 'hrs ';
        document.getElementById('countdown').innerHTML += minutes + 'mins ';
        document.getElementById('countdown').innerHTML += seconds + 'secs';
    }

    timer = setInterval(showRemaining, 1000);
</script>
<div id="countdown"></div>

आपका आउटपुट निम्नानुसार दिख रहा है: -

1 दिन 9 घंटे 3 मिनट 22secs


अद्यतन करें

कार्यों का उपयोग करना:

<script>

    CountDownTimer('02/19/2012 10:1 AM', 'countdown');
    CountDownTimer('02/20/2012 10:1 AM', 'newcountdown');

    function CountDownTimer(dt, id)
    {
        var end = new Date(dt);

        var _second = 1000;
        var _minute = _second * 60;
        var _hour = _minute * 60;
        var _day = _hour * 24;
        var timer;

        function showRemaining() {
            var now = new Date();
            var distance = end - now;
            if (distance < 0) {

                clearInterval(timer);
                document.getElementById(id).innerHTML = 'EXPIRED!';

                return;
            }
            var days = Math.floor(distance / _day);
            var hours = Math.floor((distance % _day) / _hour);
            var minutes = Math.floor((distance % _hour) / _minute);
            var seconds = Math.floor((distance % _minute) / _second);

            document.getElementById(id).innerHTML = days + 'days ';
            document.getElementById(id).innerHTML += hours + 'hrs ';
            document.getElementById(id).innerHTML += minutes + 'mins ';
            document.getElementById(id).innerHTML += seconds + 'secs';
        }

        timer = setInterval(showRemaining, 1000);
    }

</script>
<div id="countdown"></div>
<div id="newcountdown"></div>

आउटपुट निम्नानुसार दिखाई देगा: -

0 दिन 23hrs 25mins 8secs

1 दिन 23 घंटे 25 मिनट 8secs


106
2018-02-17 20:58



ठीक है जो आपने पोस्ट किया है काम कर रहा है, आप क्या बदल गए? - bammab
@bammab: कोई बदलाव नहीं, मैंने किया। बस जावास्क्रिप्ट को नीचे रखा गया है <Script> टैग और <Div> बाहर के रूप में .. - Siva Charan
@bammab: मुझे लगता है, आप याद किया जा सकता है आईडी या कुछ और.. - Siva Charan
धन्यवाद। अगर मैं आपको एक चीज़ से परेशान कर सकता हूं। क्या आप मुझे बता सकते हैं कि इसे एक फ़ंक्शन में कैसे बनाया जाए ताकि मेरे पास एक ही समय में 2 काउंटर चल रहे हों? - bammab
@ हंगरीडीबी ताकि आप टाइमर को रोक सकें और संसाधनों को साफ कर सकें, मुझे विश्वास है - afaolek


यह jQuery नहीं है, यह जावास्क्रिप्ट है। जो भी हो...

आप लगभग इसे मिला है। एकमात्र मुद्दा है var distance = end-now;। यह होना चाहिए:

var distance = end.getTime()-now.getTime();

इसके अलावा, आप का उपयोग नहीं करना चाहिए += पर innerHTML। इसके बजाय, एक चर का उपयोग करें (उदाहरण: var output = "") और उसमें जोड़ें, फिर असाइन करें innerHTML अतं मै।

अंत में, की आईडी को दोबारा जांचें div आपके पास मौजूद आईडी से मेल खाता है getElementById


6
2018-02-17 20:46



मैं वास्तव में जावास्क्रिप्ट को jQuery के रूप में संदर्भित लोगों की प्रवृत्ति से नफरत करना शुरू कर रहा हूं ... ऐसा लगता है कि लोग सोचते हैं कि आप jquery के साथ जेएस के साथ कुछ भी नहीं कर सके। - Tim
+ = आंतरिक HTML पर + = से बचने के लिए उल्लेख करने के लिए +1। - davidethell
@ कोलिंक हाँ यह बहुत अच्छा कोड की तरह प्रतीत नहीं होता है। क्या आप किसी भी जगह के बारे में जानते हैं मुझे एक jquery समाधान मिल सकता है? - bammab