مبدأ الحكم:
JavaScript هي اللغة الرئيسية لتطوير الواجهة الأمامية، ويمكننا تحديد نوع المتصفح وإصداره عن طريق كتابة برامج JavaScript. هناك طريقتان عمومًا لـ JavaScript لتحديد نوع المتصفح، تعتمد إحداهما على السمات الفريدة للمتصفحات المختلفة، ويتم تحديد الأخرى من خلال تحليل سمة userAgent للمتصفح. في كثير من الحالات، بعد تحديد نوع المتصفح حسب القيمة، يجب تحديد إصدار المتصفح لمعالجة مشكلات التوافق، ولا يمكن معرفة إصدار المتصفح بشكل عام إلا من خلال تحليل وكيل المستخدم الخاص بالمتصفح.
نوع المتصفح
⑴ السمات الخاصة بالمتصفح
⑵وفقًا لوكيل المستخدم
نسخة المتصفح
⑴وفقًا لوكيل المستخدم
حكم لمتصفحات الجوال
1. كيفية تحديد ما إذا كانت محطة متنقلة تستخدم المطابقة العادية؟
مطابقة ما إذا كان navigator.userAgent يحتوي على السلسلة AppleWebKit******Mobile
يحتوي الإصدار HD من متصفح Android qq على AppleWebKit فقط
2. حكم إصدار لغة الهاتف المحمول
استخدم navigator.browserLanguage للحصول على إصدار لغة Windows Phone.
وبطبيعة الحال، فإن إصدار اللغة للهاتف المحمول الصغير البغيض به أيضًا اختلافات في التوافق، حيث ستقوم المتصفحات المتوافقة مع نواة Mozilla وApple WebKit بإدراج navigator.language عند الوصول إلى إصدار اللغة الخاص به.
شفرة:
انسخ رمز الكود كما يلي:
<نوع البرنامج النصي = "نص/جافا سكريبت">
متصفح فار={
الإصدارات:وظيفة(){
var u = navigator.userAgent, app = navigator.appVersion;
return { // معلومات إصدار متصفح المحطة الطرفية المتنقلة
ترايدنت: u.indexOf('Trident') > -1, //IE kernel
المعزوفة: u.indexOf('Presto') > -1, //opera kernel
webKit: u.indexOf('AppleWebKit') > -1، //Apple، Google kernel
أبو بريص: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, // نواة فايرفوكس
mobile: !!u.match(/AppleWebKit.*Mobile.*/), // سواء كانت محطة متنقلة
ios: !!u.match(//(i[^;]+;( U;)? CPU.+Mac OS X/), //محطة ios
android: u.indexOf('Android') > -1 ||. u.indexOf('Linux') > -1، // محطة أندرويد أو متصفح UC
iPhone: u.indexOf('iPhone') > -1، // سواء كان متصفح iPhone أو QQHD
iPad: u.indexOf('iPad') > -1, // سواء كان iPad
webApp: u.indexOf('Safari') == -1 // ما إذا كان الويب يجب أن يكون برنامجًا بدون رأس وأسفل
};
}(),
اللغة:(navigator.browserLanguage || navigator.language).toLowerCase()
}
document.writeln("إصدار اللغة: "+browser.language);
document.writeln("سواء كانت محطة متنقلة:"+browser.versions.mobile);
document.writeln("محطة ios:"+browser.versions.ios);
document.writeln("محطة android:"+browser.versions.android);
document.writeln("سواء كان iPhone: "+browser.versions.iPhone);
document.writeln(" سواء iPad: "+browser.versions.iPad);
document.writeln(navigator.userAgent);
</script>
مكان خاص إلى حد ما
لا يحتوي متصفح UC على رأس Android ويعود فقط: linux هنا، يتم الحكم عليه تقريبًا على أنه Android يعتمد على Linux (يجب أن يكون المتطلب الأساسي محطة متنقلة، وهو ما تكون UC راضية عنه).
نتائج الكشف عن إصدار Android QQ Browser HD هي: mac، وSafari