لماذا لا يمكن للتوافق IE7 Back Back Back PHP بالكشف عن IE7؟

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

سؤال

أحصل على مشاكل غريبة مع وضع التوافق IE7 و HTML5.

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

ماذا يمكنني أن أفعل لجعل هذا أكثر قوة؟من فضلك لا تقل لاستخدام Get_Browser و Browscap.لا أرغب في الحفاظ على هذا browscap.ini.

في رأس HTML: giveacodicetagpre.

تم التحديث: giveacodicetagpre.

نقلت خط js.js إلى: giveacodicetagpre.

لا يزال يفعل الشيء نفسه عند ضرب الزر مرة أخرى.

تحرير: رجل .... أعتقد أنني أواجه بعض مشاكل الجهاز الخطيرة.يجب أن يكون المربع مع Windows مشدود بعد تحديث Windows.آسف لهذا الاشياء المجنونة.يعمل بشكل جيد على جهاز آخر لم يدرك Windows Update حتى الآن.

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

المحلول

I don't have IE9 so I can't try it but can't you do something like this and place it on the <head>:

<!--[if IE 9]>
     // your includes here
<![endif]-->

Not sure if it matters to you to still see the script tags included in the source but at least it won't execute them unless the check was satisfied.

نصائح أخرى

As @tradyblix said, you can do this client side. They're called conditional comments.

If you have to do it in the PHP, I would use strpos().

$ua = $_SERVER['HTTP_USER_AGENT'];
if (stripos($ua, 'MSIE') === false || stripos($ua, 'MSIE 9') !== false)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top