दिलचस्प पोस्ट
सी '+', 'अगर' अभिव्यक्ति में परिवर्तनीय घोषणा क्यूटी स्थिर लिंकिंग और तैनाती फोन में फोनगैप खुला लिंक Std :: नक्शा के साथ रेंज-आधारित () लूप का उपयोग कैसे करें? मैं स्ट्रिंग का उपयोग करके एक नई एंड्रॉइड गतिविधि कैसे शुरू करूं? ओपनजीएल पिक्सल में शीर्ष स्थिति को परिभाषित करता है आकृति ऊंचाई / चौड़ाई के लिए बुनना चक विकल्प काम नहीं कर रहे हैं सरणी योग और औसत पारदर्शी आधा चक्र एक div से बाहर काट दिया बंद करने पर PHP सत्र को नष्ट करें कैसे सीएसएस केवल ओपेरा के लिए दृश्यमान बनाने के लिए क्या आईओएस में गोपनीयता सेटिंग्स रीसेट करना संभव है? Android GridView डिवाइडर खींचें सेकंड में दो तिथियों के बीच समय का अंतर प्राप्त करें मानक "उत्पादन" या "विकास" की तुलना में अलग डेटाबेस पर रेल माइग्रेशन का उपयोग करना

पृष्ठ रीफ्रेश के बाद मूल्य को बनाए रखने के लिए जेएस वैरिएबल कैसे प्राप्त करें?

क्या यह एक जावास्क्रिप्ट चर को स्थायी रूप से बदलना संभव है? के रूप में, यदि मैं चर एक्स सेट और 1 के बराबर बना। फिर एक बटन पर क्लिक करें कि वेरिएबल 2 बदलते हैं। मैं पृष्ठ पर ताज़ा करने के लिए 2 पर रहने के लिए उस चर को कैसे प्राप्त करूं?

वेब के समाधान से एकत्रित समाधान "पृष्ठ रीफ्रेश के बाद मूल्य को बनाए रखने के लिए जेएस वैरिएबल कैसे प्राप्त करें?"

यह window.localStorage (या window.sessionStorage ) के साथ संभव है। अंतर यही है कि sessionStorage लिए तब तक रहता है जब ब्राउज़र खुला रहता है, localStorage पिछले ब्राउज़र पुनरारंभ से बचता है। हठ पूरी वेब साइट पर लागू होता है न कि इसके एक पेज पर।

जब आपको एक वेरिएबल निर्धारित करना होगा जो कि अगले पेज (पेजों) में दिखाई दे, तो इसका उपयोग करें:

 var someVarName = "value"; localStorage.setItem("someVarName", someVarName); 

और किसी भी पेज में (जैसा कि पेज लोड हो रहा है), इसे पसंद करें:

 var someVarName = localStorage.getItem("someVarName"); 

.getItem() null वापस लौटाएगा यदि कोई मान संग्रहीत नहीं है, या संग्रहीत मान।

ध्यान दें कि इस स्टोरेज में केवल स्ट्रिंग मान को संग्रहीत किया जा सकता है, लेकिन इसे JSON.stringify और JSON.parse का उपयोग करके दूर किया जा सकता है। तकनीकी रूप से, जब भी आप कॉल करते हैं .setItem() , यह कॉल करेगा .setItem() मान और स्टोर पर।

एमडीएन के डोम स्टोरेज गाइड (नीचे लिंक्ड), वर्कअराउंड / पॉलीफिल हैं, जो कि कुकीज जैसे सामान पर वापस गिरने की स्थिति में है, यदि localStorage उपलब्ध नहीं है

यह एक मौजूदा, या अपनी खुद की मिनी लाइब्रेरी बनाने का एक बुरा विचार नहीं होगा, जो किसी भी डेटा प्रकार को सहेजने की क्षमता को सारबद्ध करता है (जैसे ऑब्जेक्ट लिटरल्स, एरेज़ इत्यादि)।


संदर्भ:

कुकीज़ और window.name अलावा, कम से कम एक अन्य स्थान है जहां आप "अर्द्ध-स्थाई" क्लाइंट डेटा स्टोर कर सकते हैं: window.name । कोई भी स्ट्रिंग मान जिसे आप window.name को असाइन करते हैं, तब तक वहां रहेगा जब तक विंडो बंद नहीं हो जाती।

इसे जांचने के लिए, बस कंसोल और प्रकार window.name = "foo" खोलें। window.name = "foo" , फिर पृष्ठ को रीफ्रेश करें और window.name ; इसे foo साथ जवाब देना चाहिए

यह हैक का एक सा है, लेकिन यदि आप नहीं चाहते हैं कि हर अनुरोध के साथ सर्वर को अनावश्यक डेटा से भरकर कुकीज भेजी जाए, और यदि आप किसी भी कारण (लीगेसी क्लाइंट) के लिए स्थानीय localStorage उपयोग नहीं कर सकते हैं, तो यह एक विकल्प हो सकता है विचार करने के लिए।

window.name पास एक और रोचक संपत्ति है: अन्य डोमेन से दी जाने वाली खिड़कियों के लिए यह दृश्यमान है; यह समान मूल नीति के अधीन नहीं है जैसे window की लगभग हर दूसरी संपत्ति। इसलिए, "अर्द्ध-स्थायी" डेटा को संचय करने के अतिरिक्त, जब उपयोगकर्ता पृष्ठ को नेविगेट या रिफ्रेश करता है, तो आप इसे सीओआरएस-फ्री क्रॉस-डोमेन कम्युनिकेशन के लिए भी उपयोग कर सकते हैं।

ध्यान दें कि window.name केवल तारों को स्टोर कर सकता है, लेकिन JSON की व्यापक उपलब्धता के साथ, जटिल डेटा के लिए भी यह बहुत अधिक समस्या नहीं होनी चाहिए।

आपको पेज रिफ्रेश में मूल्य को स्टोर करने के लिए कुकी का उपयोग करना होगा। कुकी एक्सेस को सरल बनाने के लिए आप इस तरह से कई जावास्क्रिप्ट आधारित कुकी लाइब्रेरीज़ में से किसी एक का उपयोग कर सकते हैं

यदि आप केवल html5 का समर्थन करना चाहते हैं तो आप स्टोरेज एपीआई के बारे में सोच सकते हैं जैसे स्थानीय स्टॉरेज / सत्रस्टॉरेज

पूर्व: स्थानीय स्टोरेज और कुकीज पुस्तकालय का उपयोग करना

 var mode = getStoredValue('myPageMode'); function buttonClick(mode) { mode = mode; storeValue('myPageMode', mode); } function storeValue(key, value) { if (localStorage) { localStorage.setItem(key, value); } else { $.cookies.set(key, value); } } function getStoredValue(key) { if (localStorage) { return localStorage.getItem(key); } else { return $.cookies.get(key); } } 

आप क्लाइंट साइड पर कुकीज़ को संग्रहीत करके ऐसा कर सकते हैं।