2012-09-28 15 views
25

का उपयोग कर मैं एक पेज है कि एक पृष्ठ जहाँ वे निम्न का उपयोग कर के एक iframe में शामिल किया जा रहा है है पर किसी iframe में एक्स-UA- संगत उपयोग करने के लिए कोशिश कर रहा है:IE = किनारा एक पेज IE = EmulateIE7

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/> 

और आदर्श रूप से मैं अपने पृष्ठ को उस ब्राउज़र के लिए उपलब्ध नवीनतम मानकों मोड का उपयोग करने के लिए प्रस्तुत करना चाहता हूं जो उपयोगकर्ता उपयोग कर रहा है। क्या यह संभव है?

मैं सहित

<meta http-equiv="X-UA-Compatible" content="IE=edge"/> 
अपने पन्ने पर

, साथ ही मेरी webapp फेरबदल 'IE = किनारा' के मूल्य के साथ 'एक्स-UA- संगत' HTTP शीर्ष लेख शामिल करने के लिए कोशिश की है, लेकिन मैं यह कर सकते हैं मुझे ऐसा करने के लिए प्रतीत नहीं होता है जो मैं चाहता हूं।

अजीब बात है, यह है कि अगर उदाहरण के लिए मैं दो पृष्ठों, पहले तो जैसे आइफ्रेम युक्त और अन्य किया जा रहा है क्या iframe में प्रदर्शित किया जाता है, है:

<!doctype html> 
<html> 
<head> 
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/> 
    <script> 
     console.log("Page document mode: "+document.documentMode); 
    </script> 
</head> 
<body> 
<iframe src="iframepage.html" /> 
</body> 
</html> 

और

<!doctype html> 
<html> 
<head> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
    <script> 
     console.log("Iframe document mode: "+document.documentMode); 
    </script> 
</head> 
<body> 
</body> 
</html> 

उत्पादन होता है बल्कि अप्रत्याशित

Page document mode: 7 
Iframe document mode: 8 

कहाँ दस्तावेज़ मोड 8 से आया है? और मैं iframe दस्तावेज़ को 9 या उससे ऊपर में कैसे बना सकता हूं ??

अगर कोई मुझे सही दिशा में इंगित कर सकता है तो मैं हमेशा से आभारी रहूंगा !! धन्यवाद, निक

+1

मुझे एक ही समस्या है। क्या आपको एक समाधान मिला ? –

+0

दुर्भाग्यवश, मुझे डर नहीं है – eldoctoro

+0

बस अनुमान लगाता है, लेकिन कोशिश करने के लिए कुछ चीजें 1 होगी) मेटा टैग की बजाय एक्स-यूए-संगत http शीर्षलेख का उपयोग करके आईई = 9 को किनारे के बजाय सेट करना, और/या 2) –

उत्तर

21

आईई फ्रेम पदानुक्रम में IE9 + और पुराने मोड मिश्रण करने की अनुमति नहीं देता है। यदि आपका शीर्ष दस्तावेज़ आईई 7 है, तो आप किसी भी आंतरिक दस्तावेज़ में उच्चतम प्राप्त कर सकते हैं I8 है। इसी प्रकार, आप आईई 9 मोड पेज के अंदर आईई 9 मोड डॉक्स के अलावा कुछ भी होस्ट नहीं कर पाएंगे।

+2

हालांकि ऐसा लगता है कि मोड को दूसरे तरीके से मिश्रण करना संभव है: मानक मोड में मुख्य पृष्ठ, संगतता मोड में फ्रेम: http://stackoverflow.com/q/18976213/1768303 – Noseratio

+0

मुद्दों पर स्रोत पर विचार करना महत्वपूर्ण है जो इस तरह आसानी से उलझन में हैं: http://msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx – Luke

+2

@ नोसेरेटियो मैंने आपके अन्य प्रश्न में आपका उदाहरण देखा है, और मैं आपके भीतर के फ्रेम में विश्वास करता हूं कि आप एक वास्तविक आईई 5 \ क्विर्क मोड नहीं देख रहे हैं, बल्कि "लगभग मानक मोड" नामक कुछ है, जो आपके द्वारा वर्णित तालिका व्यवहार को छोड़कर मानक के समान ही है। यहां अधिक जानकारी: http://msdn.microsoft.com/en-us/library/ff405912(v=vs.85).aspx। यह बहुत अच्छा है अगर यह आपके लिए काम करता है, लेकिन तालिकाओं के अलावा अन्य चीजें काम नहीं करेंगे क्योंकि आप शुद्ध विरासत मोड से अपेक्षा करते हैं। –