2012-08-30 32 views
6

फेसबुक चैट विंडो पृष्ठ को रीफ्रेश करने के लिए खुला, अपरिवर्तित, या यहां तक ​​कि जब हम पृष्ठ बदलते हैं। कुछ समान कैसे पुन: उत्पन्न करें? फ्रेमसेट के साथ कोशिश की, लेकिन यह काम नहीं किया।फेसबुक चैट की तरह विंडो

किसी वेबसाइट को लिंक या पृष्ठ पर क्लोकर को रीफ्रेश करने के बाद भी एक div को आंतरिक के समान विंडो कैसे खोलें?

+0

आपको विंडो की स्थिति को किसी चीज़ पर कायम रखना है। या तो एक कुकी, सत्र, या एक डेटाबेस (या किसी भी चीज)। – Shmiddty

+0

मैं इसे AJAX –

+0

पर करूँगा यदि आप ** ब्राउज़र बटन के साथ ** पृष्ठ पुनः लोड करते हैं, तो यह "खुला रहता है" नहीं - यह पृष्ठ पर अन्य सभी चीज़ों के साथ पुनः लोड किया जाता है। आप अपने यूआई का उपयोग करके जो कुछ भी करते हैं वह बस AJAX है और सर्वर से पेज को पुनः लोड नहीं कर रहा है, वे चैट अनुभाग को छूते समय केवल पृष्ठ के अनुभागों को अपडेट कर रहे हैं। –

उत्तर

1

उन्हें तरह, आप कोशिश कर सकते हैं -

  1. डेटा फेसबुक पृष्ठों के बीच साझा किया जाता है। शायद एचटीएमएल 5 localStorage? कुकीज़? मुझे यकीन नहीं है।

  2. यदि आप देखते हैं, तो वे पृष्ठ को "रीफ्रेश" नहीं करते हैं, वे पृष्ठ पर सामग्री को बाद में लोड के लिए रीफ्रेश करते हैं। अंत में अपने सभी सीएसएस मुख्य रूप से कुछ z-index डाल उपयोग करने के लिए (आप मैन्युअल रूप से एक ही पृष्ठ पर, निश्चित रूप से नेविगेट जब तक।)

  3. ,।

मुझे आशा है कि वे 3 आपको शुरू करने के लिए पर्याप्त हैं।

0

मुझे नहीं लगता कि फेसबुक का पूरा पृष्ठ लोड हो गया है। प्रत्येक लिंक का अपना 'लक्ष्य' होता है। उनमें से अधिकतर एक पृष्ठ लाते हैं (मुझे लगता है कि केवल AJAX के साथ), दूसरों को स्क्रीन के कुछ आंशिक रूप से बदलने के लिए। तो मान लें, आपके पास दो divs हैं। एक div चैट-div है। पोजिशनिंग निश्चित और सभी, 100 पर जेड-इंडेक्स, यह हमेशा शीर्ष पर रहेगा। शेष पृष्ठ अन्य div है। इस div के भीतर, आप रीफ्रेश करने के लिए पूरी स्क्रीन के बिना AJAX के साथ कुछ पेज लोड कर सकते हैं।

स्क्रीन के पुनः लोड के साथ: आप आसानी से सहेज सकते हैं (AJAX के साथ भी) क्या उपयोगकर्ता ने चैट स्क्रीन बंद कर दी है या इसे खोला है। बस 'चैट' या कुछ नामक डेटाबेस में एक टेबल बनाएं, फिर जब कोई चैटस्क्रीन खोला जाए तो आप उस तालिका में 'person_1', 'person_2' 'lastmessage' और 'active' के साथ एक प्रविष्टि डाल दें। जब वे चैट बंद करते हैं, तो आप 'सक्रिय' फ़ील्ड को झूठी डाल सकते हैं। फिर, जब भी कोई पूरी वेबसाइट लोड करता है, तो आप सक्रिय चैट के लिए टेबल चैट की जांच करते हैं, और जब कोई भी होता है तो उन्हें दिखाता है।

0

मैं qjuery-qjax में दिखेगा: ajax के माध्यम से अपने सर्वर से एचटीएमएल हथियाने और ajax के साथ अपने पृष्ठ पर एक कंटेनर की सामग्री को बदल कर

pjax काम करता है: https://github.com/defunkt/jquery-pjax

उनके डॉक्स से डी एचटीएमएल। इसके बाद यह आपके पृष्ठ के लेआउट या किसी भी संसाधन (जेएस, सीएसएस) को फिर से लोड किए बिना पुशस्टेट का उपयोग करके ब्राउजर के वर्तमान यूआरएल को अपडेट करता है, जो तेज, पूर्ण पृष्ठ लोड की उपस्थिति देता है। लेकिन वास्तव में यह सिर्फ AJAX और pushState है।