2017-10-18 25 views
8

का उपयोग करने के प्रभाव मैं पॉपअप विंडो पर तत्वों को अलग करने के विचार के साथ आ रहा हूं। window.open() के साथ पॉपअप बनाएं, उस दस्तावेज़ में कुछ तत्व सेट करें और मूल उद्देश्य की सेवा के लिए ईवेंट श्रोताओं को जोड़ें, लेकिन पॉपअप विंडो घटक के रूप में। यह सब काम करता है, और ऐसा लगता है कि बनाई गई विंडो को उसी धागे से संभाला जाता है।एकाधिक इंटरैक्टिव पॉपअप विंडो

क्या यह "तकनीक" बग-प्रवण किसी भी मौके से है? I.g: यदि मैं पॉपअप विंडो में कैनवास बनाता हूं और उससे वेबग्ल संदर्भ प्राप्त करता हूं, तो क्या यह बेकार ढंग से काम करेगा? अगर मैं वहां ईवेंट श्रोताओं का एक समूह स्थापित करता हूं, तो क्या मुझे बिना किसी देरी के कॉलबैक मिलेगा?

मैं इस पर अपना शोध नहीं कर सका क्योंकि लगभग कोई भी ऐसा नहीं करता है। मेरे जीवन के माध्यम से, मैंने देखा है कि कई साइटें उपयोगकर्ता इनपुट के लिए पॉपअप विंडो का उपयोग करती हैं लेकिन इंटरैक्टिव या रीयल टाइमी सामान के लिए नहीं। मैं एक वेब ऐप बना रहा हूं जो जटिल है कि एकाधिक मॉनीटर का उपयोग करने से उपयोगकर्ता अनुभव में लाभ होगा। आप जानते हैं, कम से कम मुझे पता है कि दो मॉनीटर होने के लिए कितना दर्दनाक है और उनमें से दोनों का उपयोग करने में असमर्थ रहें क्योंकि ऐप के सभी घटक एक खिड़की में फंस गए हैं। बस फ़ोटोशॉप के एक एमडीआई संस्करण का उपयोग करने की कल्पना करें जहां सभी टूलबॉक्स एमडीआई क्षेत्र के भीतर हैं और आप उन्हें ऐप विंडो से बाहर नहीं निकाल सकते हैं। एक वेब पेज बिल्कुल ठीक है।

+1

माइक्रोसॉफ्ट डायनेमिक्स सीआरएम यह व्यापक रूप से करता है। यह काफी "वास्तविक समय" है। संदेह यह आपको अपनी तकनीकों को और आगे बढ़ाने में मदद करेगा, लेकिन यह एक उदाहरण है जो दिमाग में आता है। एफडब्ल्यूआईडब्ल्यू, मेरे पास दो मॉनीटर हैं अभी तक डायनेमिक्स सीआरएम अपने सभी विंडोज़ के साथ उपयोग करने में निराशाजनक हो सकता है; आपको अभी भी इन एकाधिक विंडोज़ कामों के माध्यम से सावधानी से सोचने की ज़रूरत है या यह एक खिड़की यूआई से भी बदतर हो सकता है। –

+0

यह एक सार्वजनिक चेहरा वेब ऐप या आंतरिक है? दूसरे शब्दों में, आपके पास पर्यावरण का नियंत्रण है? – fruggiero

+0

@fruggiero सं। यह आम जनता को लक्षित किया गया है। केरल स्पेस प्रोग्राम जैसे फ्लाइट सिम के बारे में बात करना। –

उत्तर

1

हालांकि यह गैर परंपरागत है, लेकिन यह निश्चित रूप से आपके द्वारा उल्लिखित आवश्यकता के अनुरूप लगता है। खिड़कियों में प्रतिपादन या संचार को संभालने के लिए ब्राउज़र समर्थन की बात आने पर मुझे कोई समस्या नहीं दिखाई देती है, यह सिर्फ इतना है कि आपको अपने कोड से अधिक सावधान रहना होगा। उपयोगकर्ता ने आपके पॉप-अप को बंद कर दिया है (या विंडो बंद कॉलबैक पंजीकृत करें ताकि आप आवश्यक समायोजन कर सकें) में लगातार जांच करें।

खिड़कियों में इवेंटिंग भी ठीक होना चाहिए। http://help.dottoro.com/ljrwrqew.php का संदर्भ लें जिसमें ईवेंट कॉलबैक को एक विंडो से दूसरे में जोड़ने का बिल्कुल वही उदाहरण है।

एक और अच्छा पढ़ा है http://www.infimum.dk/HTML/JSwindows.html

0

एक संभावित दोष यह हो सकता है कि पॉपअप ब्राउज़र पॉपअप अवरोधक द्वारा अवरुद्ध किया जा सकता है (लेकिन हाँ, आप पॉपअप अपने वेब अनुप्रयोग से आ रही ब्लॉक नहीं करती करने के लिए उपयोगकर्ता को सूचित कर सकता है)

कोई अन्य व्यक्ति यह हो सकता है कि आपके जावास्क्रिप्ट कोड पर निर्दिष्ट पॉपअप के आयामों का सम्मान नहीं किया जा सकता है (यह ब्राउज़र के विवेकानुसार है), उदाहरण के लिए एक ब्राउज़र किसी भी समय पॉपअप को खोल सकता है टैब या एक नई अधिकतम विंडो।

यहाँ आप बहु खिड़की के साथ कुछ तैयार प्रयोगों मिलेगा: https://experiments.withgoogle.com/chrome?tag=Multi-Window

अपने मुख्य विंडो और अपने पॉपअप आप किसी भी समस्या नहीं होना चाहिए के बीच डाटा साझा करने के लिए।

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

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