chrome.pageAction

توضیحات

از chrome.pageAction API برای قرار دادن نمادها در نوار ابزار اصلی Google Chrome در سمت راست نوار آدرس استفاده کنید. اقدامات صفحه نشان دهنده اقداماتی است که می توان در صفحه فعلی انجام داد، اما برای همه صفحات قابل اجرا نیست. عملکردهای صفحه وقتی غیرفعال هستند خاکستری به نظر می رسند.

در دسترس بودن

≤ MV2

چند نمونه:

  • در فید RSS این صفحه مشترک شوید
  • از عکس های این صفحه یک نمایش اسلاید بسازید

نماد RSS در اسکرین شات زیر یک عمل صفحه را نشان می دهد که به شما امکان می دهد در فید RSS برای صفحه فعلی مشترک شوید.

عملکردهای صفحه پنهان خاکستری به نظر می رسد. به عنوان مثال، فید RSS زیر خاکستری است، زیرا نمی توانید در فید صفحه فعلی مشترک شوید:

لطفاً به جای آن از یک عملکرد مرورگر استفاده کنید تا کاربران همیشه بتوانند با برنامه افزودنی شما تعامل داشته باشند.

آشکار

عملکرد صفحه خود را در مانیفست افزونه به این صورت ثبت کنید:

{
  "name": "My extension",
  ...
  "page_action": {
    "default_icon": {                    // optional
      "16": "images/icon16.png",           // optional
      "24": "images/icon24.png",           // optional
      "32": "images/icon32.png"            // optional
    },
    "default_title": "Google Mail",      // optional; shown in tooltip
    "default_popup": "popup.html"        // optional
  },
  ...
}

از آنجایی که دستگاه‌هایی با فاکتورهای مقیاس کمتر رایج مانند 1.5x یا 1.2x رایج‌تر می‌شوند، توصیه می‌شود اندازه‌های متعددی را برای نمادهای خود ارائه دهید. Chrome نزدیک‌ترین مورد را انتخاب می‌کند و آن را برای پر کردن فضای 16 شیب اندازه‌گیری می‌کند. این همچنین تضمین می کند که اگر اندازه نمایش آیکون تغییر کرد، نیازی به انجام کار دیگری برای ارائه آیکون های مختلف ندارید! با این حال، اگر تفاوت اندازه خیلی زیاد باشد، این مقیاس‌بندی می‌تواند باعث شود که نماد جزئیات را از دست بدهد یا مبهم به نظر برسد.

نحو قدیمی برای ثبت نماد پیش فرض هنوز پشتیبانی می شود:

{
  "name": "My extension",
  ...
  "page_action": {
    ...
    "default_icon": "images/icon32.png"  // optional
    // equivalent to "default_icon": { "32": "images/icon32.png" }
  },
  ...
}

بخش هایی از رابط کاربری

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

با استفاده از روش های pageAction.show و pageAction.hide به ترتیب، یک اکشن صفحه ظاهر می شود و خاکستری می شود. به طور پیش فرض، یک عملکرد صفحه خاکستری به نظر می رسد. هنگامی که آن را نشان می دهید، برگه ای را که نماد باید در آن ظاهر شود را مشخص می کنید. این نماد تا زمانی که برگه بسته نشود یا نشانی اینترنتی دیگری را نمایش دهد قابل مشاهده باقی می ماند (به عنوان مثال، چون کاربر روی یک پیوند کلیک می کند).

نکات

برای بهترین تاثیر بصری، این دستورالعمل ها را دنبال کنید:

  • از اکشن های صفحه برای ویژگی هایی استفاده کنید که فقط برای چند صفحه منطقی هستند.
  • از عملکردهای صفحه برای ویژگی هایی که برای اکثر صفحات منطقی است استفاده نکنید . به جای آن از اقدامات مرورگر استفاده کنید.
  • دائماً نماد خود را متحرک نکنید . این فقط آزار دهنده است.

انواع

ImageDataType

داده های پیکسل برای یک تصویر. باید یک شی ImageData (به عنوان مثال، از یک عنصر canvas ) باشد.

تایپ کنید

ImageData

TabDetails

Chrome 88+

خواص

  • tabId

    شماره اختیاری

    شناسه برگه مورد نظر برای درخواست. اگر هیچ برگه ای مشخص نشده باشد، حالت غیر اختصاصی تب برگردانده می شود.

روش ها

getPopup()

قول بده
chrome.pageAction.getPopup(
  details: TabDetails,
  callback?: function,
)

سند html را به عنوان پنجره بازشو برای این اکشن صفحه تنظیم می کند.

پارامترها

  • جزئیات
  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (result: string) => void

    • نتیجه

      رشته

برمی گرداند

  • قول<رشته>

    Chrome 101+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

getTitle()

قول بده
chrome.pageAction.getTitle(
  details: TabDetails,
  callback?: function,
)

عنوان اکشن صفحه را دریافت می کند.

پارامترها

  • جزئیات
  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    (result: string) => void

    • نتیجه

      رشته

برمی گرداند

  • قول<رشته>

    Chrome 101+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

hide()

قول بده
chrome.pageAction.hide(
  tabId: number,
  callback?: function,
)

عمل صفحه را پنهان می کند. عملکردهای صفحه پنهان همچنان در نوار ابزار Chrome ظاهر می شوند، اما خاکستری هستند.

پارامترها

  • tabId

    شماره

    شناسه برگه ای که می خواهید عملکرد صفحه را برای آن تغییر دهید.

  • پاسخ به تماس

    عملکرد اختیاری

    Chrome 67+

    پارامتر callback به نظر می رسد:

    () => void

برمی گرداند

  • قول<باطل>

    Chrome 101+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

setIcon()

قول بده
chrome.pageAction.setIcon(
  details: object,
  callback?: function,
)

نماد عمل صفحه را تنظیم می کند. نماد را می توان به عنوان مسیر یک فایل تصویری یا به عنوان داده پیکسل از یک عنصر بوم یا به عنوان فرهنگ لغت یکی از آنها مشخص کرد. باید مسیر یا ویژگی imageData مشخص شود.

پارامترها

  • جزئیات

    شی

    • iconIndex

      شماره اختیاری

      منسوخ شده است. این استدلال نادیده گرفته می شود.

    • داده های تصویری

      ImageData | شی اختیاری

      یک شی ImageData یا یک فرهنگ لغت {size -> ImageData} که نمادی را نشان می دهد که باید تنظیم شود. اگر نماد به عنوان فرهنگ لغت مشخص شده باشد، تصویر واقعی مورد استفاده بسته به تراکم پیکسل صفحه نمایش انتخاب می شود. اگر تعداد پیکسل‌های تصویری که در یک واحد فضای صفحه نمایش قرار می‌گیرند برابر با scale باشد، تصویر با scale اندازه * n انتخاب می‌شود که n اندازه نماد در رابط کاربری است. حداقل یک تصویر باید مشخص شود. توجه داشته باشید که 'details.imageData = foo' معادل 'details.imageData = {'16': foo}' است

    • مسیر

      رشته | شی اختیاری

      یک مسیر تصویر نسبی یا یک فرهنگ لغت {size -> مسیر تصویر نسبی} که به نمادی که باید تنظیم شود اشاره می‌کند. اگر نماد به عنوان فرهنگ لغت مشخص شده باشد، تصویر واقعی مورد استفاده بسته به تراکم پیکسل صفحه نمایش انتخاب می شود. اگر تعداد پیکسل‌های تصویری که در یک واحد فضای صفحه نمایش قرار می‌گیرند برابر با scale باشد، تصویر با scale اندازه * n انتخاب می‌شود که n اندازه نماد در رابط کاربری است. حداقل یک تصویر باید مشخص شود. توجه داشته باشید که 'details.path = foo' معادل 'details.path = {'16': foo}' است

    • tabId

      شماره

      شناسه برگه ای که می خواهید عملکرد صفحه را برای آن تغییر دهید.

  • پاسخ به تماس

    عملکرد اختیاری

    پارامتر callback به نظر می رسد:

    () => void

برمی گرداند

  • قول<باطل>

    Chrome 101+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

setPopup()

قول بده
chrome.pageAction.setPopup(
  details: object,
  callback?: function,
)

سند HTML را تنظیم می کند که وقتی کاربر روی نماد عملکرد صفحه کلیک می کند، به عنوان یک پنجره بازشو باز شود.

پارامترها

  • جزئیات

    شی

    • پنجره بازشو

      رشته

      مسیر نسبی فایل HTML برای نمایش در یک پنجره بازشو. اگر روی رشته خالی ( '' ) تنظیم شود، هیچ پنجره ای نمایش داده نمی شود.

    • tabId

      شماره

      شناسه برگه ای که می خواهید عملکرد صفحه را برای آن تغییر دهید.

  • پاسخ به تماس

    عملکرد اختیاری

    Chrome 67+

    پارامتر callback به نظر می رسد:

    () => void

برمی گرداند

  • قول<باطل>

    Chrome 101+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

setTitle()

قول بده
chrome.pageAction.setTitle(
  details: object,
  callback?: function,
)

عنوان عمل صفحه را تنظیم می کند. این در یک راهنمای ابزار روی عملکرد صفحه نمایش داده می شود.

پارامترها

  • جزئیات

    شی

    • tabId

      شماره

      شناسه برگه ای که می خواهید عملکرد صفحه را برای آن تغییر دهید.

    • عنوان

      رشته

      رشته راهنمای ابزار.

  • پاسخ به تماس

    عملکرد اختیاری

    Chrome 67+

    پارامتر callback به نظر می رسد:

    () => void

برمی گرداند

  • قول<باطل>

    Chrome 101+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

show()

قول بده
chrome.pageAction.show(
  tabId: number,
  callback?: function,
)

عملکرد صفحه را نشان می دهد. عمل صفحه هر زمان که برگه انتخاب شود نشان داده می شود.

پارامترها

  • tabId

    شماره

    شناسه برگه ای که می خواهید عملکرد صفحه را برای آن تغییر دهید.

  • پاسخ به تماس

    عملکرد اختیاری

    Chrome 67+

    پارامتر callback به نظر می رسد:

    () => void

برمی گرداند

  • قول<باطل>

    Chrome 101+

    Promises فقط برای Manifest V3 و نسخه‌های جدیدتر پشتیبانی می‌شود، پلتفرم‌های دیگر باید از callback استفاده کنند.

رویدادها

onClicked

chrome.pageAction.onClicked.addListener(
  callback: function,
)

هنگامی که نماد عمل صفحه کلیک می شود فعال می شود. اگر عملکرد صفحه دارای یک پنجره بازشو باشد، این رویداد فعال نمی شود.

پارامترها

  • پاسخ به تماس

    تابع

    پارامتر callback به نظر می رسد:

    (tab: tabs.Tab) => void