6

मैं समझने की कोशिश कर रहा हूं कि क्यों CS3Pie प्रोटोटाइप 1.6.1 के साथ संयोजन में उपयोग किया जाता है इंटरनेट एक्सप्लोरर 8. ऐसा क्यों हो रहा है?CSS3Pie + प्रोटोटाइप 1.6.1 क्रैश इंटरनेट एक्सप्लोरर 8

प्रासंगिक जानकारी

  • CSS3Pie एक इंटरनेट एक्सप्लोरर व्यवहार (HTC) कि बॉर्डर-त्रिज्या, ढ़ाल, आदि जैसे CSS3 के गुण के लिए समर्थन जोड़ता
  • दुर्घटना में ही होता है [source code] है आईई 8, आईई 7 या इससे पहले नहीं।
  • क्रैश केवल प्रोटोटाइप 1.6.1 [source code] में होता है, प्रोटोटाइप 1.6.0.x
  • क्रैश पृष्ठ लोड पर तुरंत होता है, मैं पृष्ठ से बातचीत करने में भी सक्षम नहीं हूं।
  • डेवलपर इस मुद्दे से अवगत है लेकिन चूंकि उनका मानना ​​है कि यह एक प्रोटोटाइप मुद्दा है (यह हो सकता है), वह इसे ठीक करने के लिए उत्सुक नहीं हो सकता है। forum post और GitHub bug report दोनों हैं, लेकिन न तो अधिक जानकारी जोड़ें।
+1

क्या आपने प्रोटोटाइप की 1.7 रिलीज के साथ प्रयास किया है क्योंकि * जल्द ही जारी किया जाना चाहिए – robjmills

+0

प्रोटोटाइप 1.7_आरसी 2 काम करता है। उत्पादन में आरसी का उपयोग नहीं करने जा रहा है, लेकिन मुझे लगता है कि मैं बस इंतजार कर सकता हूं। –

+0

क्या आपके पास 'htc' के लिए सामग्री-प्रकार सेट है और उसी डोमेन नियमों का पालन करें? – rxgx

उत्तर

5

यह IE8 crash है, जो दिखाई देता है हाल ही में एक विंडोज अद्यतन में निर्धारित किया गया है करने के लिए, डोम वस्तु CSS3Pie व्यवहार के आवेदन के बाद प्रोटोटाइप के साथ प्रोटोटाइप के फेरबदल से शुरू हो रहा था। प्रोटोटाइप 1.6.1 में, इसे प्रोटोटाइप.ब्रोसर फीचर ऑब्जेक्ट पर झूठी करने के लिए ElementExtensions और SpecificElementExtensions को सेट करके चारों ओर काम किया जा सकता है और चेकडिफिशियेंसी फ़ंक्शन को तुरंत ठीक करने के लिए संशोधित किया जा सकता है।

1

यह एक अच्छी शुरुआत है, लेकिन फिर यह अन्य ब्राउज़रों (यानी फ़ायरफ़ॉक्स, क्रोम) के तहत काम करना बंद कर देता है। इसके बजाय आपको प्रत्येक फ़ंक्शन (ElementExtensions, SpecificElementExtensions, CheckDeficiency) की शुरुआत में आईई 8 की जांच में जोड़ना चाहिए, फिर एक्सटेंशन अज्ञात फ़ंक्शंस के लिए झूठी वापसी करें और चेकडिफिकेंसी फ़ंक्शन के लिए सत्य लौटाएं।

ElementExtensions: (function() { 
if (isIE8) return false; 
... 

SpecificElementExtensions: (function() { 
if (isIE8) return false; 
... 

function checkDeficiency(tagName) { 
if (isIE8) return true; 
... 

var isIE8 = (function(){ 
    return ((navigator.userAgent.indexOf('MSIE')!=-1) && (document.documentMode==8)); 
})(); 
संबंधित मुद्दे