2010-02-14 6 views
11

कुछ वेबसाइटें (जैसे फेसबुक) आईफ्रेम में स्क्रिप्ट लोड क्यों करती हैं?कुछ वेबसाइटें (जैसे फेसबुक) आईफ्रेम में स्क्रिप्ट लोड क्यों करती हैं?

क्या यह साइट को एक समय में 2 से अधिक संसाधन लोड करने की अनुमति देने के लिए है क्योंकि iframe के संसाधन अलग-अलग URL पर हैं?

+0

रिकॉर्ड के लिए, जीमेल एक ही काम करता है। –

उत्तर

5

आप क्या कर रहे हैं seing करने के लिए कोई उपयोग कर सकते है, "धूमकेतु" संचार का एक आवेदन किया जा सकता है डेटा चैनल के रूप में एक छिपा iframe का उपयोग करके। Wikipedia के अनुसार तकनीक का एक संक्षिप्त विवरण:

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

इसका उपयोग चैट जैसी किसी चीज़ के लिए किया जा सकता है, जहां संदेशों को ध्यान देने योग्य देरी के बिना दिखाई देने की उम्मीद है, और अधिमानतः नए डेटा के लिए आवधिक "मतदान" के बिना। यदि आप यही पार करते हैं, तो आपको फ्रेम में कई <script> तत्व देखना चाहिए, और जितना बार जाना होगा उतना अधिक जोड़ा जाना चाहिए।

1

जावास्क्रिप्ट iframe में लोड पैरेंट पृष्ठ वस्तुओं (क्रॉस-डोमेन प्रतिबंध)

+0

"क्रॉस-डोमेन प्रतिबंध" होने के नाते, यह तभी लागू होगा यदि आईफ़्रेम मूल पृष्ठ की तुलना में किसी भिन्न डोमेन से है, है ना? –

+1

मेरा उत्तर देखें: मुझे नहीं पता कि अलग-अलग डोमेन अभिभावक पृष्ठ तक पहुंच प्रतिबंधित करते हैं, लेकिन वे स्पष्ट रूप से प्रत्येक कार्य/चर को अनूठा # के साथ जोड़कर प्रभावी ढंग से सैंडबॉक्स –

+0

लागू करने के लिए सही तरीके से करते हैं :-) मुझे लगता है कि मैं सवाल गलत समझा। – Qwerty

4

संपादित

तो वास्तव में आपके प्रश्नों के उत्तरों ... मुझे पता नहीं है! निम्नलिखित जानकारी उपयोगी हो सकती है, हालांकि:

फेसबुक आपके जेएस वैरिएबल और फ़ंक्शंस को आपके एप्लिकेशन आईडी के साथ प्रीपेड करता है।

var ID; 

var 1262682068026-ID; 

हो जाता है यह, केवल अपने आवेदन करने के लिए अपने जावास्क्रिप्ट का दायरा सीमित हो जाता है आप डोम उपयोग नहीं कर सकते अपने दोस्तों, फोन नंबर, ईमेल, पते, आदि में प्राप्त करने के लिए जब तक अधिकार दिया गया। एक iFrame क्योंकि में Facebook Docs

+3

यह सवाल का उत्तर कैसे देता है? – SLaks

+0

इसका उद्देश्य सैंडबॉक्स बनाना है –

+0

123-आईडी मान्य वैरिएबल नाम कैसा है? लगता है कि आपका मतलब 123_आईडी है। आपको अपडेट करना चाहिए – mythz

1

वे धूमकेतु लोड (धूमकेतु, HTTP पुश, लंबे समय तक रहा, आदि उर्फ) कनेक्शन: यह थोड़ा उप सैंडबॉक्स आप में खेलने के लिए के लिए यहाँ देखते हुए अधिक जानकारी बनाता

। इंटरनेट एक्सप्लोरर अंततः इसे चला जाता है:

http://cometdaily.com/2007/10/25/http-streaming-and-internet-explorer/

यह प्रभावी रूप से एक सतत लंबे चुनाव है, यह एक अवरोधक है, इस हैक भी बेहतर जवाबदेही के लिए अग्रणी IE के 2 कनेक्शन सीमा बढ़ जाती है, पृष्ठभूमि जानकारी:

http://alex.dojotoolkit.org/2006/02/what-else-is-burried-down-in-the-depths-of-googles-amazing-javascript/