उस बारे में विरोधाभासी संदेश प्राप्त करना, आशा है कि वे नहीं हैं। मैं इसके लिए समर्थन की कल्पना नहीं कर सकता, क्योंकि एक गजिल साइट्स उनका उपयोग करती है।
उस बारे में कुछ अतिरिक्त प्रश्न:
- उन्हें इस टैग को चरणबद्ध क्यों करना चाहिए?
- इसके लिए कोई विकल्प?
उस बारे में विरोधाभासी संदेश प्राप्त करना, आशा है कि वे नहीं हैं। मैं इसके लिए समर्थन की कल्पना नहीं कर सकता, क्योंकि एक गजिल साइट्स उनका उपयोग करती है।
उस बारे में कुछ अतिरिक्त प्रश्न:
जवाबों:
मेरी राय में W3C ने सख्त HTML और XHTML सिद्धांतों से iframes को डंप करने में बंदूक को जकड़ लिया। सिद्धांत रूप में आप <object>अपने दस्तावेज़ में विदेशी वस्तुओं को जोड़ने के लिए तत्व का उपयोग करेंगे , लेकिन ब्राउज़र अंतर और सीमाओं ने कई डेवलपर्स के लिए इसे नॉन-स्टार्टर बना दिया है। बहुत अधिक व्यावहारिक HTML 5 (जो अभी भी एक मसौदा है) के साथ, iframes वापस आ गए हैं और यहां तक कि दो नई विशेषताएँ भी हैं: seamlessऔर पेचीदा sandbox।
<iframe>HTML 5 में अभी भी समर्थन है, इसलिए मुझे नहीं लगता कि यह निकट भविष्य में बदल जाएगा।
आपके अन्य सवालों के जवाब देने के लिए:
<iframe>s (सामान्य रूप में फ़्रेम) अधिकांश समय उपयोगकर्ता के अनुकूल नहीं होते हैं:
<div>स्पष्ट होने के लिए: मैं <iframe>एक इंटरफ़ेस तत्व के रूप में बात कर रहा हूं । Google मेल करता है जैसे अन्य सामान लोड करने के लिए एक छिपा तत्व नहीं है।
पेज लेआउट के लिए iframes अप्रचलित हैं । अच्छे सीएसएस लेआउट के बजाय कभी भी उनका उपयोग न करें, यहां तक कि टेबल-आधारित लेआउट भी बेहतर है।
Iframes का उपयोग करने के लिए अच्छे कारण हैं:
IFrames अप्रचलित नहीं हैं, लेकिन उनके उपयोग करने के कारण दुर्लभ हैं।
Iframes का उपयोग करने के कारण:
मैं यह भी जवाब दूंगा कि आइफ्रेम को हटाने की कोई आवश्यकता नहीं है, यह एक आवश्यक टैग है और थोड़ी देर के लिए आसपास होगा।
मैंने बहुत सारे फ़ोरम देखे हैं जो आइफ्रेम के प्रतिस्थापन के रूप में ऑब्जेक्ट टैग का सुझाव देते हैं, जो संभवतः अधिकांश मामलों में काम करता है।
उदाहरण के लिए, मेरे पास एक IFrame में एक पीडीएफ दिखा रहा था (क्योंकि अन्य चीजें थीं जो हमें केवल पीडीएफ के अलावा पृष्ठ पर दिखाने की आवश्यकता थी) और ऑब्जेक्ट का उपयोग करके इसे प्रदर्शित करने में सक्षम था।
क्या था:
<iframe id="confirmed_pdf" class="current_pdf" src="/prescriptions/show_pdf?id=123" height="570" width="480"></iframe>
बन गया:
<object id="confirmed_pdf" class="current_pdf" data="/prescriptions/show_pdf?id=123" type="application/pdf" height="570" width="480">
<p>[Show this message if displaying the PDF did not work]</p>
</object>
लेकिन ऑब्जेक्ट केवल पृष्ठ के पीडीएफ हिस्से को प्रिंट करने में सक्षम होने के लिए आवश्यकता को भरने के लिए एक उपयुक्त प्रतिस्थापन नहीं था।
पेज के भीतर एक IFrame अपनी खिड़की की तरह है (मूल रूप से एक विंडो, मूल रूप से एक विंडो), और एक बार जब आप विंडो ऑब्जेक्ट प्राप्त करते हैं, तो आप इस पर .print () कॉल कर सकते हैं, जैसे:
jQuery("#confirmed_pdf").contentWindow.print();
IFrame में एक ContentWindow प्रॉपर्टी है, जो कि केवल उस हिस्से को प्रिंट करना संभव बनाता है। ऑब्जेक्ट में एक ContentWindow प्रॉपर्टी नहीं है, इसलिए केवल पेज के अनुभाग को प्रिंट करने का कोई तरीका नहीं है।
तो, ऐसा लगता है कि यदि आप कुछ प्रदर्शित करने के लिए सिर्फ IFrame का उपयोग कर रहे हैं, तो ऑब्जेक्ट जैसे अन्य टैग हैं जिनका उपयोग किया जा सकता है। लेकिन अगर आपको कुछ तरीकों से IFrame की सामग्री के साथ बातचीत करने की आवश्यकता है, तो IFrame आवश्यक हो सकता है।
AJAX के साथ IFrames का बहुत उपयोग किया जाता है। उदाहरण के लिए GMail, नौ छिपे हुए IFrames का उपयोग करता है जो मुझे विश्वास है।
मेरी पिछली कंपनी में, हमने एक होस्टेड एप्लिकेशन प्रदान किया था जिसे ग्राहक अपनी वेबसाइट में एकीकृत करेंगे। कभी-कभी, वे ऐसा करने के लिए एक IFrame का उपयोग करते हैं, हमारे होस्ट किए गए पृष्ठ को उनके मौजूदा डिज़ाइनों में फिट करते हैं। कभी-कभी यह मूल रूप से भी किया जाता था (यानी, IFrame की कोई सीमा या स्क्रॉलबार नहीं थी, यह सिर्फ पृष्ठ के भाग जैसा दिखता था)। मैंने इसे टैग का अच्छा उपयोग माना।
वे कुछ परिस्थितियों में बेहद उपयोगी हो सकते हैं, लेकिन वे सीमित हैं। विशेष रूप से कई साइटों पर आम कार्यक्षमता एम्बेड करना।
उदाहरण के लिए मेरे पास एक ग्राहक है जो कई स्कॉटिश माल ई-कॉमर्स साइट चलाता है। इस के भाग के रूप में हमने आपके उपनाम या टार्टन की आपकी पसंद से संभावित कबीले नामों का पता लगाने के लिए कुछ सरल अनुप्रयोगों का विकास किया है (यदि आप चाहें तो टार्टन हमारी अर्थव्यवस्था के लिए प्रति वर्ष $ 700 मिलियन के लायक हैं)। इसके पीछे डेटाबेस आश्चर्यजनक रूप से बड़ा है (मुख्य नामों और टैटर्स टेबल में लगभग दस हजार पंक्तियां) और काफी नियमित रूप से अपडेट किया गया है।
इसलिए हमारे पास एक वेबसाइट पर चलने के लिए सेट अप एप्लिकेशन हैं और फिर एक iframe का उपयोग करके हमारी अन्य वेबसाइटों में इनको एम्बेड किया जाता है, जिससे गुजरने वाले सरल जावास्क्रिप्ट पैरामीटर को सक्षम किया जाता है ताकि हम एम्बेडिंग साइट पर कार्यक्षमता के साथ टैटन या कबीले के चयन को एकीकृत कर सकें। Iframe को noborder के रूप में सेट किया जाता है, इसलिए यह अंतिम उपयोगकर्ता के लिए पूरी तरह से सहज प्रतीत होता है।
बेशक ऐसा करने के अन्य तरीके होंगे, लेकिन एक iframe का उपयोग सरल और मजबूत है। और यह निश्चित रूप से अप्रचलित नहीं है।
पाठ्यक्रमों के लिए घोड़े ... <iframe> s कुछ और जैसे हैं ... सही उद्देश्य के लिए वे सही उपकरण हैं; गलत उद्देश्य के लिए वे बदसूरत हैक या बदतर हैं।
अजाक्स में, <div> s अक्सर अधिक उपयुक्त कंटेनर होते हैं। कुछ स्थानों पर <iframe> s द्वारा समर्थित, अपनी खुद की साइट के हिस्से के रूप में बाहरी सामग्री को पारित करने की गतिविधि अनुचित है।
मेरी टीम ने उपयोगकर्ताओं को उनके HTML ई-मेल इतिहास तक पहुँच प्रदान करने के लिए एक आदर्श तरीके के रूप में दूसरे दिन एक <iframe> का उपयोग किया - ई-मेल पूर्ण थे <html> पृष्ठ जो हम अपने वेब टेम्पलेट में आसानी से सम्मिलित करना चाहते थे। <iframe> s उस डेटा को प्रस्तुत करने के लिए बिल्कुल सही थे] '।
दूसरी ओर, <iframe> s को हमेशा किसी भी उपयोगकर्ता द्वारा प्रस्तुत सामग्री में हटा दिया जाना चाहिए या अक्षम कर दिया जाना चाहिए, जो साइट पर वापस आउटपुट होता है, क्योंकि उस संदर्भ में वे एक प्रमुख सुरक्षा समस्या है।
Google गैजेट विनिर्देश वर्तमान में iframes पर निर्भर करता है: http://code.google.com/apis/gadgets/docs/spec.html
वर्तमान में वे जावास्क्रिप्ट ऐप्स के लिए अलगाव प्रदान करने का एकमात्र सरल तरीका है जो कई डोमेन / प्रदाताओं से खींचे जाते हैं।
साथ ही ऐसे कई विजेट जो लोग अपनी वेबसाइटों पर तीसरे पक्ष से एम्बेड करते हैं, आइफ्रेम का उपयोग करते हैं।
जबकि वे अपनी कमियां हैं, iframes वेब पर आम समस्याओं के लिए एक व्यावहारिक समाधान प्रदान करते हैं। मुझे यह अनुमान लगाना होगा कि वे आने वाले कुछ समय के लिए आसपास होंगे।
अनुपालन और सुरक्षा मुद्दे भी आपको इफ्रेम का उपयोग करने के लिए ड्राइव कर सकते हैं; शॉपिंग कार्ट लोकप्रिय IFrame- आधारित कार्यान्वयन हैं, जब आप चीजों के भुगतान प्रसंस्करण पक्ष की पूरी जिम्मेदारी लिए बिना कुछ वेब पेजों के हिस्से के रूप में एक शॉपिंग कार्ट को नेत्रहीन रूप से शामिल करना चाहते हैं।
हम आमतौर पर अपने ईकामर्स सामान और क्लाइंट को एकीकृत करने के लिए एक iframe वितरित करते हैं जैसे कि टर्नकी कैसे हो सकता है।
मैं एक ऐसी कंपनी के लिए काम करता हूं, जो मेन्यू वेब, इनटॅर्क वेब फॉर्म की पेचीदगियों को कवर करने के लिए मेन्यू, लिस्ट, कंटेंट ब्लॉक आदि से सब कुछ के लिए फ्रेम का इस्तेमाल करती है। एप्लिकेशन बहुत धीमा है और केवल IE पर चलता है। यह मत करो।