تحديد الأوامر التي يتم تنفيذها على نظام الزائر للموقع في لغة جافاسكربت JAVASCRIPT الدرس |39| - Programmer Tech

Programmer Tech

تعلم البرمجة - علوم الكمبيوتر - أمن المعلومات - القرصنة الأخلاقية

إعلان اعلى المقالة

الأربعاء، 16 يونيو 2021

تحديد الأوامر التي يتم تنفيذها على نظام الزائر للموقع في لغة جافاسكربت JAVASCRIPT الدرس |39|

 

تحديد الأوامر التي يتم تنفيذها على نظام التشغيل

في هذا الدرس سوف نتعلم على شيئ جديد من خلاله سوف نتمكن من تحديد الأوامر التي نرغب بأن يتم تنفيذها على "الهواتف أو الكمبيوتر أو نظام تشغيل محدد" الذي نقوم بتحديده بأنفسنا من خلال الكود مثل 'نظام أندرويد, ويندوز, آيفون, لينكس....الخ'.

نقوم بفتح ملف html نكتب به العناصر التي نريد أن يتم تنفيذ الأوامر عليها, مثال سوف نستخدم الوسم h2 و نقوم بكتابة إسم موقعنا ضمن الوسم.

<body>
    <h2>Programmer Tech website</h2>
</body>

سوف نقوم بتجريب الأكواد بشكل مباشر من متصفح جوجل كروم بالدخول لوضع المطورين به, نضغط بالزر اليمين في الماوس على أي مكان فارغ في الشاشة و الذهاب إلى خيار فحص العنصر أو Inspect ثم console ثم الضغط على إشارة الأجهزة كما يلي


نقوم بكتابة الأمر navigator.userAgent ثم نضغط على Enter و نرى نتيجة تعلُّمنا ببيانات الحاسوب الخاص بي و المتصفح كما يلي


كما لاحظنا أعطانا بيانات المتصفح الخاص بي و النظام و بعض البيانات الأخرى, نقوم بالتبديل من الخيارات بأن جهازنا هو Galaxy S5 و نرى ما النتيجة التي سوف ترجع لنا


سوف نقوم حالياً بتبديل نوع الجهاز على سبيل المثال إلى آيفون و نرى نتيجته

 

نلاحظ بأن نوع الجهاز هو iPhone و نظامه OS و إصداره 12 و نوعه ماك و المتصفح هو Safari و بعض البيانات الأخرى.

لقد تعلَّمنا أنهُ من خلال العنصر أو الأمر navigator.userAgent يُمكننا أن نقوم بتحديد نوع النظام المُستخدَم و نوع المتصفح الذي يقوم به المستخدم بزيارة الموقع لدينا, و أهم شيئ هو النظام المستخدم, فعلى سبيل المثال نرغَب في تنفيذ الأوامر على جميع الأجهزة التي يكون نظامها أندرويد أثناء زيارة الموقع الخاص بنا, قبل كل شيئ كما نُلاحظ في الصور السابقة أنه عندما يقوم بعرض البيانات لنا يعرضها بالأحرف الكبيرة و الصغيرة, و يفضَّل أن تكون البيانات بالأحرف الصغيرة و نستخدم لهذا الغَرَض الميثود toLowerCase() بعد أمر معرفة معلومات النظام المستخدم navigator.userAgent كما يلي


نُلاحظ بأن جميع النتائج قد تم إرجاعها لنا بالأحرف الصغيرة لأننا إستخدمنا العنصر toLowerCase() في أثناء تنفيذ الأمر.

في حال كان نظام الزائر أندرويد

لنقم الآن بفتح محرر الأكواد و نقوم بالتمرن على ما سبق من خلال المحرر, نفتح ملف الجافاسكربت و نكتب به

var deviceSystem = navigator.userAgent.toLowerCase();
if(deviceSystem.includes("android")){
    alert("أنا مستخدم أندرويد");
}

شرح المثال السابق "جهاز أندرويد"

أنشأنا متغير بإسم deviceSystem و كان يساوي القيمة أو يخزن به القيمة navigator.userAgent.toLowerCase ثم وضعنا جملة شرطية if و قٌمنا بتحديد المٌتغير ثم قٌلنا في حال كان المتغير السابق التي تم تخزين البيانات به هو من نوع أندرويد قم بتنفيذ أمر alert مُنبثق يُعلِمُنا بكلمة أنا مُستخدم أندرويد و عند تنفيذ الكود ستكون النتيجة هي


بهذه الطريقة يتم تحديد الأوامر التي نٌريد تنفيذها على جميع أنواع هواتف الأندرويد.


في حال كان نظام الزائر آيفون

و إذا كُنا نُريد أيضاً تحديد أوامر لجميع هواتف آيفون نقوم بوضع شرط آخر و تحديد الأجهزة التي تنتجها آيفون iphone و ipad و ipod لأن آيفون لديها العديد من النسخ

var deviceSystem = navigator.userAgent.toLowerCase();
if(deviceSystem.includes("android")){
    alert("أنا مستخدم أندرويد");
}else if(deviceSystem.includes("iphone") || deviceSystem.includes("ipad")
 || deviceSystem.includes("ipod")){
     alert("أنا مستخدم ايفون");
 }

شرح المثال السابق "جهاز آيفون"

لقد قُمنا بوضع شرط آخر عن المثال السابق و هو لتنفيذ الأوامر على أجهزة iphon و لأن آيفون لها أجهزة متعددة و ضعنا إشارة أو وهي || ثم إخترنا النوع ipad ثم النوع ipod ووضعنا أمر الظهور على الشاشة عبر alert يكتُب لنا أنا مُستخدم آيفون و عند تشغيل هذا الكود سنجد النتيجة هي


تنفيذ الأوامر على إصدار محدد من أندرويد

يمكن أيضاً إستهداف أجهزة محددة من نوع أندرويد على سبيل المثال فقط الأجهزة التي أنظمتها هي لوليبوب 5.0 يتم هذا بوضع رقم إصدار النظام بعد إسم النظام كما يلي

var deviceSystem = navigator.userAgent.toLowerCase();
if(deviceSystem.includes("android")&&deviceSystem.includes("5.0") ) {
    alert("أنا مستخدم أندرويد"); 


في الكود السابق قُمنا بتحديد الأوامر فقط على أجهزة أندرويد التي تحتوي على النظام لوليبوب و رقم إصداره 5.0.


في حال كان نظام الزائر ويندوز

لنطور الكود السابق أكثر و جعل تنفيذ الأوامر تتم على إصدارات ويندوز أيضاً و تحديد مثلاً فقط النواة 64 بت منها 

var deviceSystem = navigator.userAgent.toLowerCase();

if(deviceSystem.includes("android")&&deviceSystem.includes("5.0") ) {
    alert("أنا مستخدم أندرويد");

}else if(deviceSystem.includes("iphone") || deviceSystem.includes("ipad")
 || deviceSystem.includes("ipod")){
     alert("أنا مستخدم ايفون");
 }

if(deviceSystem.includes("windows") && deviceSystem.includes("win64")){
    alert("أنا مستخدم ويندوز");
}

شرح المثال السابق "نظام ويندوز نواته 64 بت

هنا قُمنا بوضع شرط آخر على المثال السابق في الكود و هو في حال كان النظام ويندوز يظهَر للمستخدم أن نظامهُ ويندوز و وضعنا إشارة && ثم إخترنا فقط الأجهزة التي نواتها هي 64 بت يتم تنفيذ الأوامر عليها أما النواة 32 لا يتم تنفيذ شيئ عليها


و نستطيع أيضا تنفيذ الأوامر مثلاً على أنظمة محددة من ويندوز مثلاً فقط ويندوز 10 أو ويندوز 8 أو 7 ....الخ.


دورات في موقعنا ذات صلة بهذا الدرس

1 - إضغط هنا لتعلم لغة HTML.

2 - إضغط هنا لتعلم لغة CSS.

3 - إضغط هنا لتعلم لغة PHP.

4 - إضغط هنا لقراءة مقال بوتستراب Bootstrap.

ليست هناك تعليقات:

إرسال تعليق

facebook

نموذج الاتصال

الاسم

بريد إلكتروني *

رسالة *