افزونهها در HTML
سالها پیش مرورگرها به افزونهها (plug-ins) — برنامههای اضافهای که کنار مرورگر نصب میشدند — تکیه میکردند تا ویدیو پخش کنند، انیمیشن اجرا کنند یا اسناد خاصی نشان دهند. Flash نمونهٔ معروف بود؛ Shockwave و کمکهای اختصاصی دیگر هم همان موج را سوار بودند. نویسندگان اغلب به بازدیدکننده میگفتند «لطفاً نصب کنید…» قبل از اینکه درس یا دموی محصول حتی شروع شود. آن عصر برای وب باز تمام شده است. این جلسهٔ کوتاه یک تابلوی احتیاط است، نه راهنمای ساخت با plug-in. شما همین حالا جایگزینها را تمرین میکنید: رسانهٔ بومی و embedهای محتاطانه.
«plug-in» در مرورگر چه معنایی داشت
یک plug-in کلاسیک مرورگر نرمافزاری بود که بازدیدکننده (یا واحد IT او) باید نصب میکرد تا مرورگر بتواند انواع فایل خاصی را به آن کمککننده بسپارد. نویسندگان سپس با تگها و الگوهایی که آن زمان عادی بهنظر میرسید، صفحات را به آن کمککنندهها اشاره میدادند. صفحه دیگر «فقط HTMLای که مرورگر میفهمد» نبود؛ به باینری سومی وابسته بود که ممکن بود نباشد، قدیمی باشد، مسدود باشد، ناامن باشد یا روی گوشی اصلاً در دسترس نباشد. وقتی کمککننده شکست میخورد، درس هم با آن شکست میخورد — حتی اگر نشانهگذاریتان برای آن پشتهٔ قدیمی «درست» بود.
پاسخ مستقیم
سایتهای جدیدی نسازید که به Flash یا plug-inهای رسانهای قابلنصب مشابه وابسته باشند. از HTML بومی استفاده کنید: video، audio، canvas، SVG و JavaScript وقتی به رفتار نیاز دارید. بازدیدکنندگان نباید فقط برای دیدن محتوای روزمرهتان افزونهٔ خاص مرورگر نصب کنند. اگر در آموزشی قدیمی تکهکد <object> / <embed> مربوط به Flash دیدید، آن را قطعهٔ موزهای بدانید، نه قالب کار امروز. هر جا صفحهٔ مدرن به صدا، حرکت یا پخشکنندهٔ رسمی سایت دیگری نیاز دارد، درسهای رسانه و iframe را که تازه تمام کردید ترجیح دهید.
سپس در برابر اکنون
📊 سپس در برابر اکنون
| رویکرد قدیمی | رویکرد مدرن |
|---|---|
| plug-inهای Flash / Shockwave | video و audio در HTML5 |
| فقط plug-in خاص PDF | نمایشگر PDF مرورگر یا لینک دانلود |
| embedهای شبیه ActiveX | عناصر استاندارد + iframeهای محتاطانه |
| plug-inهای انیمیشن اختصاصی | CSS، SVG، canvas و JS مدرن در صورت نیاز |
چرا وب باز جلو رفت
مرورگرهای بزرگ پشتیبانی کلاسیک plug-in به سبک NPAPI را حذف یا غیرفعال کردند. تیمهای امنیت سطح حملهٔ بزرگ کنار فرایند مرورگر را دوست نداشتند. پلتفرمهای موبایل هرگز Flash دسکتاپ را مبنای سایتهای روزمره ندانستند. گروههای استاندارد و سازندگان مرورگر روی رسانهٔ بومی، گرافیک و APIهای اسکریپت سرمایهگذاری کردند تا صفحات معمولی با نصب کمتر و قطعیهای کمتر «پخشکننده را بهروز کنید» کار کنند. نتیجه برای یادگیرنده عملی است: درسهای قبلی video، audio و iframe مسیر مدرناند — نه تور نوستالژی از جادوگرهای نصب plug-in یا نصبکنندههای کمکی سازمانی.
بهجای آن چه کنیم
- برای فایلهای رسانهای که خودتان میزبانی میکنید
video/audioرا ترجیح دهید (یا embed محتاطانه وقتی میزبان پخشکنندهٔ رسمی میدهد). - برای حرکت ساده، آیکون و شکلهای تزئینی SVG یا CSS را ترجیح دهید.
- وقتی تعامل غنیتر لازم است، از APIهای JavaScript که بعداً در برنامهٔ درسی وب آموزش داده میشوند استفاده کنید.
- برای PDF و فایلهای مشابه، اسناد استاندارد و لینک دانلود را بر گردشکار «باید کمککنندهٔ X را نصب کنید» ترجیح دهید.
- وقتی واقعاً به UI صفحهٔ دیگری در محل نیاز دارید، embed محتاطانهٔ
iframe(درس قبلی) را بر الگوهای object شبیه ActiveX اختصاصی ترجیح دهید.
خواندن آموزشهای قدیمی بدون گیر افتادن
نتایج جستجو هنوز صفحات دهساله را نشان میدهند که میگویند «Flash Player را نصب کنید» یا بلوکهای بلند <object> / <embed> با پارامترهای اختصاصی زیاد میچسبانند. آن مقالات ممکن است از نظر تاریخی برای فهمیدن نحوهٔ ارسال رسانهٔ غنی در گذشته جالب باشند. آنها تمرین فعلی دوره نیستند. وقتی اولین گام آموزش «دانلود plug-in مرورگر» است، توقف کنید و بپرسید آیا video، audio، SVG، حرکت CSS یا embed مدرن میزبان همان هدف را با اصطکاک کمتر پوشش میدهد. مسیر رسانهٔ این دوره عمداً همان ابزارها را به شما داد تا بتوانید عصر بنر نصب را رد کنید.
plug-in در برابر extension در برابر embed با iframe
- plug-in کلاسیک (این درس): کمککنندههای رسانهای قابلنصب که صفحه الزام میکرد — از وب باز تا حد زیادی رفتهاند.
- extension مرورگر: ابزارهای اختیاری که کاربر برای خودش نصب میکند (مسدودکنندهٔ تبلیغ، مدیر رمز عبور، کمکهای توسعهدهنده). نویسندگان نباید برای ظاهر شدن محتوای اصلی به این وابسته باشند که بازدیدکنندگان همان مجموعهٔ extension را داشته باشند.
- embed با
iframe: وقتی سایت دیگری پخشکننده یا صفحهٔ ابزار رسمی میدهد هنوز معتبر است (درس YouTube + درس iframe). آن قاببندی یک صفحه است، نه نصب Flash یا کمککنندهٔ Shockwave.
واژگان را روشن نگه دارید تا «به plug-in نیاز داریم» دوباره وارد برنامهریزی پروژهٔ مدرن نشود وقتی واقعاً به رسانهٔ بومی یا embed محتاطانه نیاز دارید.
تأمل (بهجای آزمایشگاه کدنویسی)
این جلسه عمداً نمونهٔ کد و آزمون ندارد — دوره آن را اختیاری و بدون آزمون علامت زده تا احتیاط را بدون تمرین الگوهای مرده جذب کنید. چند دقیقه تأمل کنید:
- یک نیاز رسانهای نام ببرید که قبلاً با
videoیاaudioبهجای plug-in حل کردهاید. - یک آموزش قدیمی آنلاین پیدا کنید که هنوز Flash را ذکر میکند و یادداشت کنید چرا گامهای نصبش را رد میکنید.
- در یک جمله برای همکلاسی توضیح دهید چرا بنرهای خالی «لطفاً نصب کنید…» برای سایتهای جدید پرچم قرمزند.
- یک مورد فهرست کنید که در آن embed رسمی
iframeمناسب است در برابر اختراع کمککنندهٔ اختصاصی. - یک خط بنویسید که اگر همتیمی بلوک Flash
<object>را در صفحهٔ درس مدرن بچسباند، چه میگویید.
اشتباهات آسان
- کپی آموزشهای قدیمی که هنوز میگویند «Flash را نصب کنید» انگار امروز لازم است
- فرض اینکه هر بازدیدکننده میتواند plug-in اختصاصی را روی هر دستگاه اجرا کند
- نادیده گرفتن اینکه مرورگرهای بزرگ پشتیبانی کلاسیک plug-in را حذف کردند
- اشتباه گرفتن extension مرورگر (انتخاب کاربر) با plug-in رسانهای الزامی صفحه
- رفتار با تکهکدهای باستانی Flash در
<object>/<embed>بهعنوان قالب شروع - باور اینکه این درس احتیاط یعنی iframe و رسانهٔ بومی «هم منسوخاند» — نیستند
این جلسه چگونه در مسیر رسانه جا میگیرد
شما video و audio خودمیزبان، سپس YouTube و embed عمومی iframe را یاد گرفتید. plug-in کنار آن مسیر بهعنوان تاریخ مینشیند: صنعت کمککنندههای قابلنصب را امتحان کرد، سپس رویکردهای بومی و قاببندیشده را استاندارد کرد. دانستن بنبست کمک میکند نصیحت بد را سریع رد کنید، بازدیدکنندگان را از گامهای نصب بیفایده محافظت کنید و عناصر زندهٔ این دوره را تمرین کنید بدون اینکه نشانهگذاری موزهای را تکلیف بدانید.
خلاصه
- plug-inهای کلاسیک مرورگر برای رسانه در وب باز منسوخاند
- رسانهٔ بومی HTML، SVG/CSS، JS مدرن و iframeهای محتاطانه جایگزینشان شدند
- الگوهای عصر Flash را برای کار جدید رد کنید
- آموزشهای قدیمی را وقتی نصب میطلبند انتقادی بخوانید
- یادگیری عناصر استانداردی که این دوره از قبل آموزش میدهد را ادامه دهید
- جلسهٔ اختیاری، صفر نمونهٔ کد، صفر آزمون — احتیاط خود درس است