HTMLالوسم <object>
- تعريفه
- دعم المتصفحات
- خصائصه
- إستخدامه
- تصميمه الإفتراضي
- نصائح و ملاحظات
تعريفه
بشكل عام نستخدم الوسم <object>
لعرض محتوى خارجي في الصفحة، هذا المحتوى يمكن أن يكون صورة، فيديو، تطبيق أو إضافة ( Plug-in ) يمكن تثبيتها في المتصفح.
عند عرض المحتوى بواسطة هذا الوسم يجب تحديد بعض الخصائص الأساسية له كمساره، نوعه، طوله و عرضه في الصفحة كالتالي.
<object type="content-type" data="data-path" width="width-value" height="height-value"> </object>
- مكان الكلمة
content-type
نمرر نوع المحتوى الذي سيتم عرضه في المتصفح. - مكان الكلمة
data-path
نمرر مسار المحتوى الذي سيتم عرضه. - مكان الكلمة
width-value
نمرر عرض المساحة التي سيتم تخصيصها لعرض المحتوى في الصفحة. - مكان الكلمة
height-value
نمرر طول المساحة التي سيتم تخصيصها لعرض المحتوى في الصفحة.
القيم التي تضعها للخاصيتين type
و data
تعطيك إياها المصادر التي تريد عرضها في الصفحة جاهزةً.
بينما الخاصيتين width
و height
فأنت من يجب أن يحددهما حتى يتم عرض المحتوى بشكل مناسب في الصفحة.
دعم المتصفحات
الجدول التالي يظهر المتصفحات التي تدعم الوسم <object>
.
Chrome | Edge | Firefox | Opera | Safari | Android Webview |
Chrome for Android |
Firefox for Android |
Opera for Android |
Safari for IOS |
Samsung Internet |
مدعوم | 12 | 1 | مدعوم | مدعوم | مدعوم | مدعوم | 4 | مدعوم | مدعوم | مدعوم |
خصائصه
الخاصية data
نضيفها للوسم لتحديد مسار المحتوى المراد عرضه في الصفحة.
الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.
Chrome | Edge | Firefox | Opera | Safari | Android Webview |
Chrome for Android |
Firefox for Android |
Opera for Android |
Safari for IOS |
Samsung Internet |
مدعوم | 12 | 1 | مدعوم | مدعوم | مدعوم | مدعوم | 4 | مدعوم | مدعوم | مدعوم |
الخاصية type
نضيفها للوسم لتحديد نوع المحتوى المراد عرضه في الوسم بأسلوب MIME و هذا الأمر يمكنك فعله بشكل إختياري لأنه غير ضروري.
كمثال بسيط، إذا أردت الإشارة إلى أن الرابط الموضوع يشير لملف CSS يمكنك إضافة الخاصية type="text/css"
للوسم.
الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.
Chrome | Edge | Firefox | Opera | Safari | Android Webview |
Chrome for Android |
Firefox for Android |
Opera for Android |
Safari for IOS |
Samsung Internet |
مدعوم | 12 | 1 | مدعوم | مدعوم | مدعوم | مدعوم | 4 | مدعوم | مدعوم | مدعوم |
الخاصية form
يمكن إضافتها للوسم لتحديد إلى أي نموذج هو تابع و هذا الأمر يمكنك فعله في حال كان الوسم موضوع خارج النموذج و تريد ربطه به.
يجب وضع id
النموذج الذي يتبع له كقيمة للخاصية.
الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.
Chrome | Edge | Firefox | Opera | Safari | Android Webview |
Chrome for Android |
Firefox for Android |
Opera for Android |
Safari for IOS |
Samsung Internet |
مدعوم | 12 | 1 | مدعوم | مدعوم | مدعوم | مدعوم | 4 | مدعوم | مدعوم | مدعوم |
الخاصية height
نضيفها للوسم لتحديد كم سيكون طول المساحة في الصفحة التي سيتم فيها عرض المحتوى.
الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.
Chrome | Edge | Firefox | Opera | Safari | Android Webview |
Chrome for Android |
Firefox for Android |
Opera for Android |
Safari for IOS |
Samsung Internet |
مدعوم | 12 | 1 | مدعوم | مدعوم | مدعوم | مدعوم | 4 | مدعوم | مدعوم | مدعوم |
الخاصية name
يمكن إضافتها للوسم بهدف إعطائه إسم مما يجعلك قادراً على توجيه المستخدم بشكل مباشر للمكان الموجود فيه أو للوصول إليه بواسطة جافاسكربت من خلال إسمه.
الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.
Chrome | Edge | Firefox | Opera | Safari | Android Webview |
Chrome for Android |
Firefox for Android |
Opera for Android |
Safari for IOS |
Samsung Internet |
مدعوم | 12 | 1 | مدعوم | مدعوم | مدعوم | مدعوم | 4 | مدعوم | مدعوم | مدعوم |
الخاصية typemustmatch
يمكن إضافتها للوسم لجعل المحتوى الذي سيتم عرضه بواسطته يظهر فقط في حال كان نوعه محدد بشكل صحيح.
Chrome | Edge | Firefox | Opera | Safari | Android Webview |
Chrome for Android |
Firefox for Android |
Opera for Android |
Safari for IOS |
Samsung Internet |
مدعوم | 12 | 1 | مدعوم | مدعوم | مدعوم | مدعوم | 4 | مدعوم | مدعوم | مدعوم |
الخاصية usemap
نضيفها للوسم في حال كنا سنعرض صورة بواسطته و هذه الصورة نريد ربطها بخريطة لها، أي نريد ربطها بوسم <map>
.
الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.
Chrome | Edge | Firefox | Opera | Safari | Android Webview |
Chrome for Android |
Firefox for Android |
Opera for Android |
Safari for IOS |
Samsung Internet |
مدعوم | 12 | 1 | مدعوم | مدعوم | مدعوم | مدعوم | 4 | مدعوم | مدعوم | مدعوم |
الخاصية width
نضيفها للوسم لتحديد كم سيكون عرض المساحة في الصفحة التي سيتم فيها عرض المحتوى.
الجدول التالي يظهر المتصفحات التي تدعم هذه الخاصية.
Chrome | Edge | Firefox | Opera | Safari | Android Webview |
Chrome for Android |
Firefox for Android |
Opera for Android |
Safari for IOS |
Samsung Internet |
مدعوم | 12 | 1 | مدعوم | مدعوم | مدعوم | مدعوم | 4 | مدعوم | مدعوم | مدعوم |
إستخدامه
في المثال التالي قمنا بتضمين الصفحة الرئيسية في موقع هرمش بداخل الصفحة.
المثال الأول
<object width="500" height="400" data="https://harmash.com" type="text/html"> </object>
في المثال التالي قمنا بتضمين فيديو موجود في يوتيوب بداخل الصفحة.
ملاحظة: الخصائص frameborder
و allow
و allowfullscreen
هي خصائص من إعداد يوتيوب و ليست من خصائص لغة HTML.
المثال الثاني
<object width="560" height="315" data="https://www.youtube.com/embed/bfaPnlYE8Jo" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen> </object>
تضمين فيديوهات يوتيوب
أي فيديو تجده في يوتيوب يمكنك عرضه بكل سهولة بداخل الصفحة بدون الحاجة لكتابة أي كود بنفسك حيث أن يوتيوب يوفر لك خيار إسمه تضمين ( object ) بمجرد النقر عليه يعطيك كود إطار يعرض الفيديو.
لتجد خيار التضمين ( object ) أنقر على زر المشاركة ( Share ) الذي تجده تحت الفيديو و سيظهر لك.
بعدها أنقر عليه حتى يعطيك الكود الذي يمكنك نسخه و وضعه في الصفحة.
يوتيوب يعطيك الكود بداخل وسم <iframe>
و لكن يمكنك وضعه بداخل وسم <object>
إذا أردت كما فعلنا في المثال السابق.
تصميمه الإفتراضي
بشكل عام جميع المتصفحات تعرضه بالتنسيق التالي.
object:focus { outline: none; }
نصائح و ملاحظات
على الرغم من أنه يمكنك استخدام الوسم <object>
لعرض أي محتوى في الصفحة إلا أنه يفضّل:
- عرض الصور باستخدام الوسم
<img>
لأنه مخصص لذلك. - عرض الصوتيات باستخدام الوسم
<audio>
لأنه مخصص لذلك. - عرض الفيديوهات باستخدام
<video>
لأنه مخصص لذلك. - عرض الصفحات الأخرى باستخدام
<iframe>
لأنه مخصص لذلك.
من الأشياء التي عليك معرفتها أيضاً أنه يوجد وسم مشابه جداً للوسم <object>
هو الوسم <embed>
حيث أن كلاهما يستخدمان لنفس الغرض و لكن هذا الوسم يعتبر قديم لهذا يفضّل استخدام الآخر.