दिलचस्प पोस्ट
पासवर्ड के लिए स्ट्रिंग के ऊपर चार पसंदीदा क्यों हैं? एक प्लगइन का उपयोग किए बिना jQuery के सहज कार्य एक बटन क्लिक किए जाने पर jQuery का उपयोग करते हुए एक ऑडियो फ़ाइल चलाएं Com.google.android.gms नहीं मिल सका: प्ले-सेवाओं: 3.1.5 9 3.2.25 4.0.30 4.1.32 4.2.40 4.2.42 4.3.23 4.4.52 5.0.77 5.0.8 9 5.2.08 6.1। 11 6.1.71 6.5.87 एक जावा विधि से कई ऑब्जेक्ट कैसे लौटाएंगे? LocalBroadcastManager का उपयोग कैसे करें? वॉली का उपयोग करके पोस्ट करें और PHP में प्राप्त करें क्यों मेरा .NET 4 अनुप्रयोग पता है। NET 4 स्थापित नहीं है XSD फ़ाइल का उपयोग कर XML फ़ाइल जनरेट कर रहा है एसक्यूएल पूर्ण तालिका स्थानांतरित करें अंगुलर हैश को कैसे जोड़ता है AngularJS में लिंक करना क्या हैं। ए और .so फ़ाइलें? <Script> तत्व जोड़ नहीं सकते जावास्क्रिप्ट में सादा गिनती टाइमर Templated पैरेंट क्लास से इनहेरिट किए गए वैरिएबल तक पहुंच

समय क्षेत्र का नाम प्राप्त करें

क्या मैं jQuery का उपयोग करके क्लाइंट के टाइम ज़ोन का नाम प्राप्त कर सकता हूं?

उदाहरण: प्रशांत एसए मानक समय, ग्रीनविच मानक समय, इस तरह: https://en.wikipedia.org/wiki/List_of_time_zones_by_country

Timezonelist

वेब के समाधान से एकत्रित समाधान "समय क्षेत्र का नाम प्राप्त करें"

क्या मैं jQuery का उपयोग करके क्लाइंट के टाइम ज़ोन का नाम प्राप्त कर सकता हूं?

नहीं। JQuery में केवल एक तारीख / समय फ़ंक्शन है, जो $.now()

यदि आप जावास्क्रिप्ट का मतलब है, तो इसका जवाब अभी भी नहीं है आप केवल date.getTimezoneOffset() से ऑफसेट समय क्षेत्र प्राप्त कर सकते हैं। आप एक समय क्षेत्र नहीं प्राप्त कर सकते हैं – कम से कम सभी ब्राउज़र में नहीं टाइमज़ोन टैग विकी के शीर्षक वाले अनुभाग को देखें: "Time Zone != Offset"

आप jsTimeZoneDetect लाइब्रेरी का उपयोग करके समय क्षेत्र में अनुमान लगा सकते हैं, लेकिन यह सिर्फ एक अनुमान है। यह सटीक नहीं हो सकता है या हो सकता है

अब आप moment.js का भी उपयोग कर सकते हैं क्षण-समयक्षेत्र जोड़ते हैं। यह अब moment.tz.guess() साथ समय क्षेत्र का अनुमान लगाने का समर्थन करता है।

यदि आप गारंटी दे सकते हैं कि आपके उपयोगकर्ताओं को ऐसे वातावरण में चल रहे हैं जो ईसीएमएस्क्रिप्ट इंटरनेशनलिआइज़ेशन एपीआई का पूरी तरह से समर्थन करता है , तो आप इस तरह उपयोगकर्ता का समय क्षेत्र प्राप्त कर सकते हैं:

 Intl.DateTimeFormat().resolvedOptions().timeZone 

आप संगतता तालिका की समीक्षा कर सकते हैं, DateTimeFormat तहत – resolvedOptions().timezone defaults to the host environment लिए resolvedOptions().timezone defaults to the host environment निर्धारित करने के लिए कि यह कौन से वातावरण में काम करेगा।

ईमानदारी से, सबसे अच्छी बात यह है कि सिर्फ अपने उपयोगकर्ता को एक स्क्रीन कहीं न दें, ताकि वे अपना समय क्षेत्र चुन सकें। आप एक ड्रॉप-डाउन सूची का उपयोग कर सकते हैं, या आप मानचित्र-आधारित टाइमज़ोन पिकर का उपयोग कर सकते हैं – जैसे यह एक आप jsTimeZoneDetect को एक डिफ़ॉल्ट मान के रूप में उपयोग कर सकते हैं, लेकिन आपका उपयोगकर्ता इसे बदलने में सक्षम होना चाहिए।

इसके अलावा, ये सभी आपको IANA टाइम ज़ोन पहचानकर्ता देने जा रहे हैं, जैसे America/Los_Angeles लेकिन आपके द्वारा दिए गए उदाहरणों को विंडोज टाइम ज़ोन आईडी (टाइम ज़ोन इनफ़ोइन के साथ .net में उपयोग के लिए) दिखाई देते हैं। आपको टाइमज़न टैग विकी पढ़ना चाहिए, और फिर यह भी सवाल: विंडोज और आईएएनए समय क्षेत्रों के बीच अनुवाद कैसे करें?

new Date() की आउटपुट Wed Aug 14 2013 22:02:13 GMT-0700 (Pacific Daylight Time) , आप इसका उपयोग कर सकते हैं? यदि आपको आधिकारिक नाम की आवश्यकता नहीं है, तो आप केवल कोष्ठक के बीच में क्या उपयोग कर सकते हैं

 function getTimeZone() { return /\((.*)\)/.exec(new Date().toString())[1]; } getTimeZone(); // Pacific Daylight Time 

नीचे एक विकल्प के रूप में शुद्ध जावास्क्रिप्ट के साथ समयक्षेत्र प्राप्त करने का तरीका है:

 (new Date).toString().split('(')[1].slice(0, -1) 

वर्तमान टाइमज़ोन मानक नाम प्राप्त करें:

 function getTimezoneName() { var timeSummer = new Date(Date.UTC(2005, 6, 30, 0, 0, 0, 0)); var summerOffset = -1 * timeSummer.getTimezoneOffset(); var timeWinter = new Date(Date.UTC(2005, 12, 30, 0, 0, 0, 0)); var winterOffset = -1 * timeWinter.getTimezoneOffset(); var timeZoneHiddenField; if (-720 == summerOffset && -720 == winterOffset) { timeZoneHiddenField = 'Dateline Standard Time'; } else if (-660 == summerOffset && -660 == winterOffset) { timeZoneHiddenField = 'UTC-11'; } else if (-660 == summerOffset && -660 == winterOffset) { timeZoneHiddenField = 'Samoa Standard Time'; } else if (-660 == summerOffset && -600 == winterOffset) { timeZoneHiddenField = 'Hawaiian Standard Time'; } else if (-570 == summerOffset && -570 == winterOffset) { timeZoneHiddenField.value = 'Pacific/Marquesas'; } // else if (-540 == summerOffset && -600 == winterOffset) { timeZoneHiddenField.value = 'America/Adak'; } // else if (-540 == summerOffset && -540 == winterOffset) { timeZoneHiddenField.value = 'Pacific/Gambier'; } else if (-480 == summerOffset && -540 == winterOffset) { timeZoneHiddenField = 'Alaskan Standard Time'; } // else if (-480 == summerOffset && -480 == winterOffset) { timeZoneHiddenField = 'Pacific/Pitcairn'; } else if (-420 == summerOffset && -480 == winterOffset) { timeZoneHiddenField = 'Pacific Standard Time'; } else if (-420 == summerOffset && -420 == winterOffset) { timeZoneHiddenField = 'US Mountain Standard Time'; } else if (-360 == summerOffset && -420 == winterOffset) { timeZoneHiddenField = 'Mountain Standard Time'; } else if (-360 == summerOffset && -360 == winterOffset) { timeZoneHiddenField = 'Central America Standard Time'; } // else if (-360 == summerOffset && -300 == winterOffset) { timeZoneHiddenField = 'Pacific/Easter'; } else if (-300 == summerOffset && -360 == winterOffset) { timeZoneHiddenField = 'Central Standard Time'; } else if (-300 == summerOffset && -300 == winterOffset) { timeZoneHiddenField = 'SA Pacific Standard Time'; } else if (-240 == summerOffset && -300 == winterOffset) { timeZoneHiddenField = 'Eastern Standard Time'; } else if (-270 == summerOffset && -270 == winterOffset) { timeZoneHiddenField = 'Venezuela Standard Time'; } else if (-240 == summerOffset && -240 == winterOffset) { timeZoneHiddenField = 'SA Western Standard Time'; } else if (-240 == summerOffset && -180 == winterOffset) { timeZoneHiddenField = 'Central Brazilian Standard Time'; } else if (-180 == summerOffset && -240 == winterOffset) { timeZoneHiddenField = 'Atlantic Standard Time'; } else if (-180 == summerOffset && -180 == winterOffset) { timeZoneHiddenField = 'Montevideo Standard Time'; } else if (-180 == summerOffset && -120 == winterOffset) { timeZoneHiddenField = 'E. South America Standard Time'; } else if (-150 == summerOffset && -210 == winterOffset) { timeZoneHiddenField = 'Mid-Atlantic Standard Time'; } else if (-120 == summerOffset && -180 == winterOffset) { timeZoneHiddenField = 'America/Godthab'; } else if (-120 == summerOffset && -120 == winterOffset) { timeZoneHiddenField = 'SA Eastern Standard Time'; } else if (-60 == summerOffset && -60 == winterOffset) { timeZoneHiddenField = 'Cape Verde Standard Time'; } else if (0 == summerOffset && -60 == winterOffset) { timeZoneHiddenField = 'Azores Daylight Time'; } else if (0 == summerOffset && 0 == winterOffset) { timeZoneHiddenField = 'Morocco Standard Time'; } else if (60 == summerOffset && 0 == winterOffset) { timeZoneHiddenField = 'GMT Standard Time'; } else if (60 == summerOffset && 60 == winterOffset) { timeZoneHiddenField = 'Africa/Algiers'; } else if (60 == summerOffset && 120 == winterOffset) { timeZoneHiddenField = 'Namibia Standard Time'; } else if (120 == summerOffset && 60 == winterOffset) { timeZoneHiddenField = 'Central European Standard Time'; } else if (120 == summerOffset && 120 == winterOffset) { timeZoneHiddenField = 'South Africa Standard Time'; } else if (180 == summerOffset && 120 == winterOffset) { timeZoneHiddenField = 'GTB Standard Time'; } else if (180 == summerOffset && 180 == winterOffset) { timeZoneHiddenField = 'E. Africa Standard Time'; } else if (240 == summerOffset && 180 == winterOffset) { timeZoneHiddenField = 'Russian Standard Time'; } else if (240 == summerOffset && 240 == winterOffset) { timeZoneHiddenField = 'Arabian Standard Time'; } else if (270 == summerOffset && 210 == winterOffset) { timeZoneHiddenField = 'Iran Standard Time'; } else if (270 == summerOffset && 270 == winterOffset) { timeZoneHiddenField = 'Afghanistan Standard Time'; } else if (300 == summerOffset && 240 == winterOffset) { timeZoneHiddenField = 'Pakistan Standard Time'; } else if (300 == summerOffset && 300 == winterOffset) { timeZoneHiddenField = 'West Asia Standard Time'; } else if (330 == summerOffset && 330 == winterOffset) { timeZoneHiddenField = 'India Standard Time'; } else if (345 == summerOffset && 345 == winterOffset) { timeZoneHiddenField = 'Nepal Standard Time'; } else if (360 == summerOffset && 300 == winterOffset) { timeZoneHiddenField = 'N. Central Asia Standard Time'; } else if (360 == summerOffset && 360 == winterOffset) { timeZoneHiddenField = 'Central Asia Standard Time'; } else if (390 == summerOffset && 390 == winterOffset) { timeZoneHiddenField = 'Myanmar Standard Time'; } else if (420 == summerOffset && 360 == winterOffset) { timeZoneHiddenField = 'North Asia Standard Time'; } else if (420 == summerOffset && 420 == winterOffset) { timeZoneHiddenField = 'SE Asia Standard Time'; } else if (480 == summerOffset && 420 == winterOffset) { timeZoneHiddenField = 'North Asia East Standard Time'; } else if (480 == summerOffset && 480 == winterOffset) { timeZoneHiddenField = 'China Standard Time'; } else if (540 == summerOffset && 480 == winterOffset) { timeZoneHiddenField = 'Yakutsk Standard Time'; } else if (540 == summerOffset && 540 == winterOffset) { timeZoneHiddenField = 'Tokyo Standard Time'; } else if (570 == summerOffset && 570 == winterOffset) { timeZoneHiddenField = 'Cen. Australia Standard Time'; } else if (570 == summerOffset && 630 == winterOffset) { timeZoneHiddenField = 'Australia/Adelaide'; } else if (600 == summerOffset && 540 == winterOffset) { timeZoneHiddenField = 'Asia/Yakutsk'; } else if (600 == summerOffset && 600 == winterOffset) { timeZoneHiddenField = 'E. Australia Standard Time'; } else if (600 == summerOffset && 660 == winterOffset) { timeZoneHiddenField = 'AUS Eastern Standard Time'; } else if (630 == summerOffset && 660 == winterOffset) { timeZoneHiddenField = 'Australia/Lord_Howe'; } else if (660 == summerOffset && 600 == winterOffset) { timeZoneHiddenField = 'Tasmania Standard Time'; } else if (660 == summerOffset && 660 == winterOffset) { timeZoneHiddenField = 'West Pacific Standard Time'; } else if (690 == summerOffset && 690 == winterOffset) { timeZoneHiddenField = 'Central Pacific Standard Time'; } else if (720 == summerOffset && 660 == winterOffset) { timeZoneHiddenField = 'Magadan Standard Time'; } else if (720 == summerOffset && 720 == winterOffset) { timeZoneHiddenField = 'Fiji Standard Time'; } else if (720 == summerOffset && 780 == winterOffset) { timeZoneHiddenField = 'New Zealand Standard Time'; } else if (765 == summerOffset && 825 == winterOffset) { timeZoneHiddenField = 'Pacific/Chatham'; } else if (780 == summerOffset && 780 == winterOffset) { timeZoneHiddenField = 'Tonga Standard Time'; } else if (840 == summerOffset && 840 == winterOffset) { timeZoneHiddenField = 'Pacific/Kiritimati'; } else { timeZoneHiddenField = 'US/Pacific'; } return timeZoneHiddenField; } 

मैं स्क्रिप्ट के साथ उपयोग कर रहा हूं इस स्क्रिप्ट को मिला। Js:

http://pellepim.bitbucket.org/jstz/

यह स्क्रिप्ट ब्राउज़र के समयक्षेत्र का नाम प्राप्त करने की अनुमति देता है, जैसे कि इस उदाहरण में:

 > var timezone = jstz.determine(); > timezone.name(); "America/New_York" 

यह jQuery में नहीं है, हालांकि …

यह किसी भी तरह से Jquery का उपयोग करने के लिए नहीं सोच सकता। आप PHP का उपयोग करते हुए दूरस्थ उपयोगकर्ता देश का नाम प्राप्त कर सकते हैं और फिर आउटपुट की तुलना इसके लिए कर सकते हैं:

1) देशों की एक सरणी जो प्रकाश बचत समय (बहुत से नहीं) को लागू करते हैं

2) वर्तमान तिथि

उपयोगकर्ता देश पाने के लिए:

 function visitor_country() { $ip = $_SERVER["REMOTE_ADDR"]; if(filter_var(@$_SERVER['HTTP_X_FORWARDED_FOR'], FILTER_VALIDATE_IP)) $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; if(filter_var(@$_SERVER['HTTP_CLIENT_IP'], FILTER_VALIDATE_IP)) $ip = $_SERVER['HTTP_CLIENT_IP']; $result = @json_decode(file_get_contents("http://www.geoplugin.net/json.gp?ip=" . $ip)) ->geoplugin_countryName; return $result <> NULL ? $result : "Unknown"; } echo visitor_country(); // Output Country name [Ex: United States] ?> 

यह विश्व समय क्षेत्र मानचित्र लिंक का उपयोग सरणी बनाने के लिए किया जा सकता है: http://www.worldtimezone.com/daylight.html

आशा है कि यह विचार आपके लिए काम करता है!

ये कड़ियाँ जेकोजी का उपयोग करते समय ज़ोन को आपकी सहायता कर सकती हैं

या निम्नलिखित कोड मदद से बाहर हो सकता है

 var offset = (new Date()).getTimezoneOffset(); alert(offset); 

चेकआउट JSFIddle कार्यान्वयन या आगे स्पष्टीकरण के लिए कृपया स्कॉट द्वारा समाधान देखें

केवल समय क्षेत्र के लिए

 function get_time_zone_offset( ) { var current_date = new Date(); alert(current_date); //return -current_date.getTimezoneOffset() / 60; } 

चेतावनी पॉपअप समय क्षेत्र भी प्रदर्शित करेगा, जो कि आप अपनी आवश्यकता के अनुसार फिर से कारक बना सकते हैं, इसे जेएस वाइड में देखें

moment.js + moment-timezones.js का उपयोग करके

moment.tz.guess();

https://github.com/moment/moment-timezone/issues/138

नियमित अभिव्यक्ति का उपयोग करते हुए शुद्ध जावास्क्रिप्ट में,

 var d = new Date(); var s = d.toString(); var zoneName = s.match(".*(\\((.*)\\))")[2]; 

कोई सीधा रास्ता नहीं है, लेकिन आप ऐसा कर सकते हैं:

var dd = नया दिनांक (); var d = dd.toString ();

var startOff = d.indexOf ('(') + 1; var एंडऑफ़ = d.lastIndexOf (')');

var str = d.substring (startOff, endOff);

मैंने जेएस बेलाल बनाया है, जहां आप अलर्ट के साथ देखते हैं: जेएसएफडेल

 var dd = new Date(); var d = dd.toString(); alert(d); var startOff= d.indexOf('(') + 1; alert(startOff); var endOff= d.lastIndexOf(')'); alert(startOff+ " : " + endOff); var str = d.substring(startOff , endOff); alert(str); 

मुझे पता है कि यह सवाल पुराना है, लेकिन यहां एक छोटे से समाधान है जिसके साथ मैं आया हूं:

 (new Date).toLocaleString('en-US', { hour12: false, hour: '2-digit', timeZoneName: 'long' }).replace(/^\d\d /, ''); 

मैंने इस व्यापक रूप से परीक्षण नहीं किया है, लेकिन मेरे ब्राउज़र के लिए यह मुझे देता है:

 "Mountain Daylight Time" 

उम्मीद है कि इसमें किसी को मदद मिलेगी