كيف يمكن جافا سكريبت يسبب IE 8 لإعادة تحميل صفحة في طريقة العرض التوافق؟

StackOverflow https://stackoverflow.com/questions/1444944

سؤال

وأنا على اختبار تطبيق على شبكة الإنترنت جافا سكريبت معقد إلى حد ما في Internet Explorer 8 على ويندوز فيستا. بعد تحميل التطبيق، IE في "المعايير" واسطة المتصفح و"IE 8 معايير" وضع المستند. أثناء تشغيل التطبيق، سوف IE أحيانا إعادة تحميل الصفحة وعرض رسالة تقول شيئا مثل "مشكلة عرض مع (URL) تسبب Internet Explorer لإعادة تحميل الصفحة في عرض التوافق" (وليس الرسالة بالضبط، وأنا على نسخة من ويندوز فيستا-غير الإنجليزية). بعد إعادة تحميل، والمتصفح في وضع المراوغات.

والتصحيح شفرة جافا سكريبت كان ضربا من العبث منذ المشكلة لا يمكن تتكرر بشكل موثوق أو تضييق، لذلك أود أن نقدر أي فكرة عن ما يمكن أن يسبب هذا السلوك.

هل كانت مفيدة؟

المحلول

ويجب أن يكون هناك مشكلة مع الترميز كنت تخدم / خلق عبر innerHTML. هنا مقال من فريق IE والذي يتضمن <لأ href = "http://blogs.msdn.com/ie/archive/2009/06/17/compatibility-view-and-smart-defaults.aspx" يختلط = "نوفولو noreferrer "> تفاصيل IE لصناعة السيارات في الانتعاش من العلامات التي من المستحيل أن تحليل بشكل صحيح في IE8-معايير الوضع:

<اقتباس فقرة>   

و... هناك معينة مسارات التعليمات البرمجية ضمن تصميم محرك جديد حيث يجب أن يحدث خطأ، فإن عملية التخطيط لا يمكن استرداد برشاقة ولقد أبقى تأكيدات حول هذه المسارات ... والمكرر هذه التجربة أكثر في صدر نسخة من IE8 باسترجاع تخطيط "من الصعب يؤكده" باستخدام طريقة عرض التوافق. وبعبارة أخرى، نعتقد أن عرض صفحة الطريقة سوف IE7 ديك يوفر تجربة أفضل للمستخدم من إظهار أي محتوى على الإطلاق.

لاحظ أن استخدام innerHTML استدعاء محلل HTML، لذلك يمكن أن تؤدي هذه المشكلة حتى بعد يتم تحميل الصفحة إذا تغذت سلسلة HTML لا يمكن أن تجعل رأس ولا ذيل.

scroll top