سؤال

لدي صفحة بها 6 dojox.charting.Chart2d الرسوم البيانية التي تعمل بشكل جيد في جميع المتصفحات يستثني أي.في IE8، يستغرق تحميل المخططات أكثر من دقيقة.

يظهر التوصيف أنه يتم استهلاك معظم الوقت إلى حد بعيد dojo._getMarginBox:57 مكالمة تستغرق ما بين 48 و66 ثانية.

  1. هل حصل أي شخص آخر على خبرة في هذا؟
  2. هل حصل أي شخص آخر على أي اقتراحات (إلى جانب التخلص من IE، وهو للأسف ليس خيارًا)؟
هل كانت مفيدة؟

المحلول

حسنا، لقد حفرناها.كانت المشكلة أن dojo._getMarginBox كان بطيئًا للغاية، حوالي 850 مللي ثانية/مكالمة.بينما كنت منشغلًا بالتوصيف والبحث عن تلميحات، قام شخص آخر بإدخال كود HTML (غير المتقن) وقام بتنظيفه، بما في ذلك إغلاق بعض الكتل غير المغلقة وما شابه.

تحسن الأداء على الفور بعامل يبلغ حوالي 5.

فرضية العمل الآن هي أن IE8 كذلك كومة من القمامة غير فعال في العثور على الصندوق المرفق إذا كان عليه التعامل مع أشجار DOM غير الأساسية.

أدى هذا أيضًا إلى تحسين الأداء في Chrome وFirefox، على الأقل في LINUX.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top