يحتوي تحميل ملف المستعرض في الواقع على مشكلات توافق متشابكة للغاية. لقد رأيت مؤخرًا Lifesinger إعطاء ملخصًا محددًا. الأمر الأكثر إثارة للقلق هنا هو أن IE6 ~ 8 لا يميز بين التحميل الناجح أو الفاشل ، وكلهم يذهبون إلى رد اتصال واحد. لقد رأيت حلًا عبر الإنترنت ، وهو وضع متغير عالمي في نهاية ملف التحميل أو تغيير سمات الملصق لتمييزه ، بحيث يتم الحكم على هذا النجاح أو لا يتم الحكم عليه من قبل هذا العلم. ولكن من الواضح أنه ليس مثاليًا ، ويجب تحميل الملف.
في وقت لاحق ، جربت فكرة أخرى ، أولاً إنشاء vbscript ، قم بتعيين SRC في ملف JS. إذا تم تحميل الملف بشكل طبيعي ، فسيتم بالتأكيد الإبلاغ عن خطأ ، وإلا فلن يكون هناك استجابة. وبهذه الطريقة ، إذا كان window.onerror يمسك بالخطأ ، فهذا يعني أن الملف صالح وسيتم تحميله بشكل طبيعي. إذا لم يتم التقاطها ، فسيتم تشغيل مهلة في ثوانٍ.
هذا الجزء من الكود:
نسخة الكود كما يلي:
إذا (أي && أي <9) {
vbs = doc.createElement (/'script/') ؛
vbs.language = /'vbscript /' ؛
vbs.src = ملف ؛
SaveRrorHandle = win.onerror ؛
win.onerror = function () {
حمولة()؛
win.onerror = SaveRrorHandle ؛
العودة صحيح.
} ؛
setTimeout (function () {
Ref.ParentNode.InserTbefore (VBS ، Ref) ؛
} ، 0) ؛
} آخر {
حمولة()؛
}