2009-09-02 11 views
10

क्या पृष्ठ को फिर से लोड होने पर मेरे (वैश्विक) चर रखना संभव है? यदि हां, तो कैसे?ब्राउज़र रीलोड बटन दबाए जाने पर चर के नुकसान को रोकें

किसी भी मदद के लिए धन्यवाद। सबसे अच्छा संबंध है।

+1

क्षमा करें अगर मैं घना हो रहा हूं, लेकिन आपकी शब्दावली गैर-मानक प्रतीत होती है। एक "वैश्विक सरणी चर" के बारे में क्या रोक सकता है? इसके अलावा, ब्राउज़र रीसेट बटन क्या है? –

+0

क्या आपके पास कुछ कोड है जो आप बता रहे हैं कि आप क्या कह रहे हैं? –

+0

क्षमा करें ... आप सही हैं मेरा मतलब है "मूल्य प्रारंभ करने या रीसेट करने के लिए रोकें"। दूसरे शब्दों में; मैं अपने वैश्विक मूल्य की रक्षा करना चाहता हूं और इसे अगले परिचालनों में उपयोग करना चाहता हूं। धन्यवाद। सबसे अच्छा संबंध है। –

उत्तर

2

जब ब्राउज़र आपके पृष्ठ को छोड़ देता है तो जावास्क्रिप्ट वातावरण रीसेट हो जाएगा। हालांकि, आप एक कुकी पर अपनी सरणी को क्रमबद्ध करने के लिए एक ऑनलोड हैंडलर पंजीकृत कर सकते हैं, फिर पेज लोड होने पर इसे हर बार जांचें और उपस्थित होने पर इसे अनसुलझा करें।

+0

हाय एडम, ब्राउज़र रीसेट बटन दबाए जाने पर क्या हो रहा है? –

+0

मैं कुकी का उपयोग किए बिना इस समस्या को हल करने का प्रयास करता हूं। –

1

क्या आपके ब्राउज़र में रीसेट बटन है, या आपका मतलब रीलोड बटन है?

जब पृष्ठ लोड होता है, तो सब कुछ ताजा लोड होता है। किसी भी पिछले पृष्ठ से कुछ भी नहीं बचा है। किसी पृष्ठ को लोड करने से बचने वाली किसी भी चीज़ को स्टोर करने का एकमात्र स्थान कुकी में है।

ध्यान दें कि कुकीज़ में रखे गए डेटा की मात्रा प्रति साइट कुछ किलोबाइट तक ही सीमित है। सटीक सीमा ब्राउज़र से ब्राउज़र में भिन्न होती है, लेकिन आप कुकीज़ में शायद एक किलोबाइट या दो मूल्य डेटा से अधिक रखने में सक्षम होने की उम्मीद नहीं कर सकते हैं।

+0

हाँ पुनः लोड बटन ... बहुत बहुत धन्यवाद गुफा ... सबसे अच्छा संबंध है। –

4

आप window.localStorage, window.sessionStorage (मालिकाना मोज़िला विस्तार) या डेटाबेस अमूर्त (window.openDatabase) वेबकिट के कुछ लोगों द्वारा प्रदान की तरह कुछ के माध्यम से पृष्ठ पुनः लोड भर में डेटा जारी रहती है ब्राउज़रों आधारित कर सकते हैं। स्टोरेज इंटरफेस के अच्छे अवलोकन के लिए this article on MDC और उनके डेटाबेस परिचय पर this WebKit article देखें।

+0

बहुत बहुत धन्यवाद कंगैक्स ... यह बहुत दिलचस्प है। कौन सा ब्राउज़र वेबकिट आधारित है? –

+0

एरोस, एंड्रॉइड के लिए वेब ब्राउजर, अरोड़ा, Google क्रोम, एपिफेनी, आईकैब, आईरिस ब्राउजर, मिडोरी, ओमनीवेब, रेकोनक, सफारी, शीरा, Skipstone, स्पॉटनिक मॉर्फोस के लिए, एसआरवेयर आयरन, स्टेनलेस, सनराइज, टीशार्क, वेब ब्राउज़र एस 60 के लिए, वेबोस:) (देखें http://en.wikipedia.org/wiki/List_of_web_browsers#WebKit-based_browsers) – kangax

0

क्या आप कुकीज़ के बारे में बात कर रहे हैं? यदि ऐसा है तो आप this open-source module

की समीक्षा करना चाहेंगे, यह आपको ब्राउजर रीलोड क्लिक के बाद भी आसानी से कुकीज स्टोर करने की अनुमति देगा। इससे यह वास्तव में आसान हो जाता है और मैं इसका उपयोग करता हूं।

var cookie = new HTTP.Cookies(); 
cookie.write('mydata', 'myvalue', '+1y'); 

//later on you can get that data EVEN AFTER a reload 
var x = cookie.read('mydata'); 

हालांकि, क्योंकि यह बहुत ही दर्दनाक है और आप वेब ब्राउज़र में परीक्षण, जैसे यकीन है कि इंटरनेट एक्सप्लोरर में काम करता है बनाने के लिए की एक बहुत कुछ करना है आप शायद शुरू से एक कुकीज़ कार्यान्वयन बनाने की कोशिश नहीं करनी चाहिए।

3

उसी शैली में आप हैश कुंजी में स्ट्रिंग मान स्टोर कर सकते हैं। जब आप अपने पेज चर वापस प्रारंभ ताज़ा

window.location.hash = 'flight/105';

तब:

संपत्ति का उपयोग करना।

8

इस cookie-less javascript function आज़माएं।

यह मूल रूप से window.name संपत्ति में अपना डेटा संग्रहीत करता है जो पृष्ठ को फिर से लोड करते समय या किसी अन्य साइट पर जाने पर मान को साफ़ नहीं करता है।

+0

पूरी तरह से काम किया, tyvm –

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