انتقال صاف با View Transition API

رابط برنامه‌نویسی کاربردی View Transition به شما این امکان را می‌دهد که بین نماهای مختلف وب‌سایت خود، گذارهای بصری یکپارچه‌ای ایجاد کنید. این امر، صرف نظر از اینکه سایت شما به صورت یک برنامه چند صفحه‌ای (MPA) یا یک برنامه تک صفحه‌ای (SPA) ساخته شده باشد، تجربه کاربری بصری جذاب‌تری را برای کاربران در حین پیمایش سایت ایجاد می‌کند.

موقعیت‌های معمول که در آن‌ها از انتقال‌های نما استفاده می‌کنید عبارتند از:

  • یک تصویر کوچک در صفحه فهرست محصولات که در صفحه جزئیات محصول به تصویر کامل محصول تبدیل می‌شود.
  • یک نوار ناوبری ثابت که هنگام حرکت از یک صفحه به صفحه دیگر، در جای خود باقی می‌ماند.
  • شبکه‌ای با آیتم‌هایی که هنگام فیلتر کردن، موقعیتشان تغییر می‌کند.
انتقال‌ها با استفاده از View Transition API ایجاد شده‌اند. سایت آزمایشی را امتحان کنید . به کروم ۱۱۱ یا بالاتر نیاز دارد.

پیاده‌سازی انتقال نماها

انتقال نماها به معماری یا چارچوب خاصی از برنامه وابسته نیست و می‌تواند نه تنها در یک سند واحد، بلکه بین دو سند مختلف نیز آغاز شود.

هر دو نوع گذار نما بر اساس بلوک‌ها و اصول ساختاری یکسانی بنا شده‌اند:

  1. مرورگر از حالت‌های قدیمی و جدید عکس می‌گیرد.
  2. DOM به‌روزرسانی می‌شود در حالی که رندر متوقف می‌شود.
  3. این انتقال‌ها توسط انیمیشن‌های CSS پشتیبانی می‌شوند.

تنها چیزی که بین هر دو نوع متفاوت است، نحوه تحریک آنهاست.


انتقال نمای سند یکسان

وقتی یک گذار نما روی یک سند واحد اجرا می‌شود، به آن گذار نمای سند یکسان می‌گویند. این معمولاً در برنامه‌های تک صفحه‌ای (SPA) اتفاق می‌افتد. گذارهای نمای سند یکسان از نسخه ۱۱۱ کروم در کروم پشتیبانی می‌شوند.

Browser Support

  • کروم: ۱۱۱.
  • لبه: ۱۱۱.
  • فایرفاکس: ۱۴۴.
  • سافاری: ۱۸.

Source

چگونه تریگر کنیم

با فراخوانی document.startViewTransition انتقال‌های نمای سند مشابه را فعال کنید:

function handleClick(e) {
  // Fallback for browsers that don't support this API:
  if (!document.startViewTransition) {
    updateTheDOMSomehow();
    return;
  }

  // With a View Transition:
  document.startViewTransition(() => updateTheDOMSomehow());
}
مثال

مثال کارت‌های زیر یک SPA است که از انتقال‌های نمای سند یکسان برای متحرک‌سازی کارت‌ها هنگام اضافه یا حذف شدن کارت‌های جدید استفاده می‌کند.

ضبط نسخه آزمایشی کارت‌ها . به کروم ۱۱۱ یا بالاتر نیاز دارد.
شروع به ساختن کنید

برای کسب اطلاعات بیشتر در مورد انتقال نمای سند یکسان، به صفحه مستندات اختصاصی مراجعه کنید.

ساخت انتقال‌های نمای سند یکسان


انتقال نمای بین اسنادی

وقتی یک انتقال نما بین دو سند مختلف رخ می‌دهد، به آن انتقال نمای بین سندی می‌گویند. این برای MPAها معمول است. انتقال نمای بین سندی در کروم ۱۲۶ و بالاتر پشتیبانی می‌شود.

Browser Support

  • کروم: ۱۲۶.
  • لبه: ۱۲۶.
  • فایرفاکس: پشتیبانی نمی‌شود.
  • سافاری: ۱۸.۲.

Source

چگونه تریگر کنیم

انتقال نمای بین اسناد، در صورتی که هر دو صفحه انتخاب شده باشند، توسط یک ناوبری بین اسناد با منشأ یکسان آغاز می‌شود. به عبارت دیگر، هیچ API برای شروع انتقال نمای بین اسناد وجود ندارد. وقتی کاربر روی یک لینک کلیک می‌کند، کلیک، انتقال نما را آغاز می‌کند.

برای انتخاب، از قطعه کد CSS زیر استفاده کنید:

@view-transition {
  navigation: auto;
}
مثال

مثال Stack Navigator زیر یک MPA است که از انتقال نمای بین سندی بین دو سند مختلف استفاده می‌کند. بسته به اینکه آیا شما به ناوبری عمیق‌تر می‌روید یا خیر، صفحات به پشته منتقل می‌شوند یا از آن خارج می‌شوند.

ضبط نسخه آزمایشی Stack Navigator . به کروم ۱۲۶ یا بالاتر نیاز دارد.
شروع به ساختن کنید

هر آنچه که باید در مورد انتقال بین سندها بدانید را بیاموزید.

ساخت انتقال‌های نمای بین اسنادی