فرض کن یه سایت آموزشی داری و کاربر روی گوشی ویدیوی درس رو باز کرده. دکمه تمام صفحه رو می زنه، ولی صفحه همچنان عمودی می مونه و ویدیو یه نوار کوچیک وسط صفحه می شه. باید خودش گوشی رو بچرخونه. بعدش اگه دوباره گوشی رو عمودی کنه، ویدیو تمام صفحه می مونه و باید دستی ازش خارج بشه. videojs-landscape-fullscreen این دردسر رو برطرف می کنه.
کار این پلاگین دو طرفه هست. وقتی پلیر وارد تمام صفحه می شه، سعی می کنه صفحه رو روی حالت افقی قفل کنه. برعکسش هم هست: وقتی گوشی رو افقی می چرخونی، پلیر خودش تمام صفحه می شه. توضیح رسمی پروژه هم همین رو می گه و اشاره می کنه که برای موبایل و پروژه های React طراحی شده.
این پلاگین به درد کسایی می خوره که از پلیر Video.js استفاده می کنن: سایت های دوره آموزشی، فروشگاه هایی که ویدیوی معرفی محصول دارن، پرتال های خبری و ویدیویی، یا اپ های ریکتی که پلیر خودشون رو ساختن. بخش بزرگی از بازدیدها معمولا از موبایله، پس یه تجربه تمام صفحه روان فرق محسوسی ایجاد می کنه. ولی اگه ویدیوهات رو با iframe از یه سرویس بیرونی نشون می دی، کنترل پلیر دست تو نیست و این پلاگین کاری برات نمی کنه. اگه هم اصلا Video.js روی سایتت نیست، برای این یکی لازم نیست سراغش بری.
یه نکته رو جدی بگیر: قفل کردن چرخش صفحه به امکانات مرورگر و سیستم عامل بستگی داره و همه جا یکسان کار نمی کنه، مخصوصا روی آیفون و بعضی مرورگرهای قدیمی. پس قبل از انتشار، روی چند گوشی واقعی با مرورگرهای مختلف تستش کن، نه فقط روی شبیه ساز مرورگر دسکتاپ. سازگاری با نسخه Video.js سایتت رو هم چک کن و برای جزئیات تنظیمات سراغ مستندات پروژه برو.
طبق اطلاعات پروژه، مجوزش MIT هست و معمولا استفاده تجاری رو هم اجازه می ده، ولی متن مجوز همراه بسته رو یه بار بخون. نسخه رسمی و بدون تغییرش رو توی مخزن داخلی ما هم نگه داشتیم. پس وقتی دسترسی به npm یا سرویس های خارجی کند یا قطعه، می تونی همین جا دانلودش کنی و کارت نخوابه.
راهنمای استفاده
اول مطمئن شو Video.js توی صفحه لود شده. این پلاگین بدون پلیر Video.js کاری نمی کنه.
- فایل کتابخانه رو از همین صفحه دانلود کن و کنار فایل های Video.js روی هاستت بذار.
- توی قالب یا صفحه، اسکریپت پلاگین رو بعد از Video.js اضافه کن. ترتیب مهمه، چون پلاگین باید روی Video.js ثبت بشه.
- کد آماده پایین همین صفحه رو توی فایل جاوااسکریپتت بذار. اون کد پلیر رو می سازه و پلاگین رو روشن می کنه.
- اگه پروژه ریکتی یا مبتنی بر npm داری، بسته رو به پروژه اضافه کن و بعد از ساخت پلیر، پلاگین رو صدا بزن.
- توی وردپرس، اسکریپت ها رو با wp_enqueue_script از داخل قالب یا افزونه لود کن تا با بقیه اسکریپت ها تداخل نکنن.
بعد از نصب، حتما روی گوشی تست کن. دکمه تمام صفحه رو بزن و ببین ویدیو افقی می شه یا نه. بعدش از حالت تمام صفحه بیا بیرون، گوشی رو بچرخون و ببین پلیر خودش وارد تمام صفحه می شه یا نه. اگه کش مرورگر یا افزونه کش وردپرس فعاله، یه بار کش رو پاک کن تا نسخه قدیمی فایل ها لود نشه.