2013-08-25 10 views
5

के लिए जावास्क्रिप्ट उलटी गिनती मैं अपने वेबपृष्ठ में उलटी गिनती टाइमर लगाने के लिए एक jQuery प्लगइन का उपयोग कर रहा हूं। वर्तमान में कोड है कि नियंत्रित होता है कि टाइमर प्रदर्शित करता है:विशिष्ट समय और दिनांक

<script type="text/javascript"> 
    var clock = $('.clock').FlipClock(3600 * 24 * 3, { 
     clockFace: 'DailyCounter', 
     countdown: true 
    }); 
</script> 


प्लगइन के लिए जे एस यहाँ देखी जा सकती है: https://github.com/objectivehtml/FlipClock/blob/master/js/flipclock/flipclock.js

उपयोग में कोड का उदाहरण पृष्ठ यहाँ देखा जा सकता: http://flipclockjs.com/faces/daily-counter

वर्तमान में टाइमर 3 दिनों के लिए उलटी गिनती है जो पृष्ठ को रीफ्रेश किए जाने पर हर बार रीसेट करता है। मैं उलटी गिनती टाइमर के लिए एक कस्टम समय का उपयोग करना चाहता हूं जो पूर्ण होगा (पेज रीफ्रेश के साथ रीसेट नहीं होगा)। मैं 30 सितंबर, 2013 को अपराह्न 12:00 बजे पीएसटी (यूएस वेस्ट - कैलिफोर्निया समय क्षेत्र) की तारीख चाहता हूं।

क्या जावास्क्रिप्ट या jQuery का उपयोग करके ऐसा करने के लिए वैसे भी है?

+0

आपके पास PHP कोड लिखने का अधिकार है? –

+0

नहीं .. जावास्क्रिप्ट केवल –

उत्तर

15

, वर्तमान समय प्राप्त करें, और ध्यान दें कि इस समय उन कंप्यूटर की घड़ी, जो कुछ भी है कि करने के लिए सेट कर दिया जाता पर सेट हो जाएगा, और एक निश्चित तारीख तय तो अंतर की गणना और का उपयोग करें कि प्लगइन के लिए:

var date = new Date(Date.UTC(2013, 8, 30, 12, 0, 0)); 
var now = new Date(); 
var diff = date.getTime()/1000 - now.getTime()/1000; 

var clock = $('.clock').FlipClock(diff, { 
    clockFace: 'DailyCounter', 
    countdown: true 
}); 

सटीक समय के लिए मैं वर्तमान समय को आउटपुट करने के लिए अपने वेबसर्वर का उपयोग करके पुनः प्राप्त करूंगा।

+0

और टाइप एरर क्या कहता है? – adeneo

+0

मुझे शायद यह ध्यान रखना चाहिए कि जिस प्लगइन से आप लिंक कर रहे हैं उसे *** फ्लिपक्लॉक *** कहा जाता है और नहीं *** FlipClip ***? – adeneo

+0

हां यह फ्लिपक्लॉक फ्लिपक्लिप नहीं है, लेकिन दुर्भाग्यवश यह http: //www.domainandseo.com/26/index.html पर देखा गया है .... सामान्य संस्करण http://www.domainandseo.com/ है 26/index1.html –

8

मैं इसे इस तरह से करना चाहते हैं:

<script type="text/javascript"> 
    var clock = $('.clock').FlipClock(new Date(2013,8,30).getTime()/1000 - new Date().getTime()/1000, { 
     clockFace: 'DailyCounter', 
     countdown: true 
    }); 
</script> 

इस तिथि सितम्बर, 30 2013 तक का काउंट डाउन ... मैं इसे अभी तक की कोशिश नहीं की तो मुझे यकीन है कि यह काम कर रहा नहीं हूँ।

संपादित करें: तिथि सही नई तारीख (2013,8,30) के बजाय नई तारीख (2013,9,30) होने के लिए के रूप में महीने गिनती 0 से शुरू होता है नहीं 1.

+0

यह अच्छा है, लेकिन यह वास्तव में" 64 दिन शेष "कहता है लेकिन 30 सितंबर तक वहां शूल्ड '35 दिन शेष 'रहें। तो मैं सोच रहा हूं कि कुछ गलत होना चाहिए? –

+0

हाँ, आप सही हैं। यह नई तारीख (2013,8,30) होनी चाहिए। जिस माह को आप चाहते हैं उसे रखें - 1 महीने की गिनती 0 से 1 से शुरू होने के कारण 1 है। शायद यह इसलिए है क्योंकि यह एक निश्चित तारीख से अंतर की गणना करता है जहां माह जनवरी है, इसलिए यदि आप जनवरी का प्रतिनिधित्व करना चाहते हैं, तो आपको 0 का उपयोग करना होगा। सितंबर का प्रतिनिधित्व करें, आपको 8. का उपयोग करना होगा मैंने जवाब को अभी सही बताया है। –

+0

ओह हाँ, बहुत बहुत धन्यवाद। मैंने आपका उत्तर एक प्लस वन दिया, लेकिन दूसरे जवाब को चयनित उत्तर cuz मिला, यह प्रश्न में अनुरोध के अनुसार यूटीसी को डिफॉल्ट टाइमज़ोन भी सेट करता है। धन्यवाद फिर से :) –

0

मैं asssuming कर रहा हूँ का पहला तर्क। फ्लिपक्लिप() उलटी गिनती पूर्ण होने तक समय की मात्रा है। इस बार, "टी", अब और लक्ष्य समय के बीच अंतर होना चाहिए।

var t = targetTimeInMs - currentTimeInMs; 

वर्तमान समय प्राप्त करने के लिए, नो-Arg डेट कन्स्ट्रक्टर का उपयोग करें।

var currentTimeInMs = new Date().getTime(); 

लक्ष्य समय प्राप्त करने के लिए, तर्कों के साथ तिथि की आपूर्ति करें। यहाँ MDN से कुछ उदाहरण हैं:

var today = new Date(); 
var birthday = new Date("December 17, 1995 03:24:00"); 
var birthday = new Date(1995,11,17); 
var birthday = new Date(1995,11,17,3,24,0); 

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

मैं बिल्कुल यकीन है कि अगर आप अपने .FlipClip() फ़ंक्शन करने के लिए पहले आर्ग के रूप में मिलीसेकेंड देने की आवश्यकता नहीं है। इसके लिए प्रलेखन/स्रोत से परामर्श लें। फिर आवश्यक इकाई (सेकेंड? मिनट? घंटे) प्राप्त करने के लिए डेट ऑब्जेक्ट की उचित विधि का उपयोग करें और डेट.getसेकंड्स(), getHours(), आदि का उपयोग करें, एमडीएन देखें।)

संबंधित मुद्दे