תיאור
אפשר להשתמש ב-API chrome.action
כדי לשלוט בסמל התוסף בסרגל הכלים של Google Chrome.
זמינות
מניפסט
כדי להשתמש ב-API chrome.action
, צריך לציין "manifest_version"
של 3
ולכלול
את המפתח "action"
בקובץ המניפסט.
{
"name": "Action Extension",
...
"action": {
"default_icon": { // optional
"16": "images/icon16.png", // optional
"24": "images/icon24.png", // optional
"32": "images/icon32.png" // optional
},
"default_title": "Click Me", // optional, shown in tooltip
"default_popup": "popup.html" // optional
},
...
}
המפתח "action"
(יחד עם הצאצאים שלו) הוא אופציונלי. אם התוסף לא כלול, הוא עדיין מוצג בסרגל הכלים כדי לאפשר גישה לתפריט של התוסף. לכן, מומלץ תמיד לכלול לפחות את המקשים "action"
ו-"default_icon"
.
מושגים ושימוש
החלקים של ממשק המשתמש
סמל
הסמל הוא התמונה הראשית בסרגל הכלים של התוסף, והוא מוגדר על ידי המקש "default_icon"
ב-
מפתח "action"
של המניפסט. הסמלים צריכים להיות ברוחב וגובה של 16 פיקסלים שאינם תלויים במכשיר (DIP).
המפתח "default_icon"
הוא מילון של גדלים לנתיבי תמונות. הסמלים האלה משמשים את Chrome
כדי לבחור באיזה קנה מידה של תמונה להשתמש. אם לא נמצאה התאמה מדויקת, Chrome בוחר את התשובה הקרובה ביותר
זמין ולשנות את הגודל שלו כך שיתאים לתמונה, דבר שעלול להשפיע על איכות התמונה.
מפני שמכשירים עם גורמים פחות נפוצים להתאמה, כמו 1.5x או 1.2x, הופכים ליותר
נפוץ, מומלץ לספק כמה גדלים לסמלים שלכם. גם
מגנה על התוסף שלך מפני שינויים פוטנציאליים בגודל התצוגה של הסמלים. אבל, לפעמים
אם מספקים רק גודל אחד, אפשר להגדיר את המפתח "default_icon"
גם
מחרוזת עם הנתיב לסמל יחיד במקום למילון.
אפשר גם להתקשר אל action.setIcon()
כדי להגדיר את סמל התוסף באופן פרוגרמטי
באמצעות ציון נתיב תמונה אחר או יצירת סמל שנוצר באופן דינמי באמצעות לוח העריכה של HTML
, או, אם מוגדר מ-רכיב Service Worker של תוסף, אל offscreen
קנבס API.
const canvas = new OffscreenCanvas(16, 16);
const context = canvas.getContext('2d');
context.clearRect(0, 0, 16, 16);
context.fillStyle = '#00FF00'; // Green
context.fillRect(0, 0, 16, 16);
const imageData = context.getImageData(0, 0, 16, 16);
chrome.action.setIcon({imageData: imageData}, () => { /* ... */ });
לתוספים ארוזים (מותקנים מקובץ .crx), התמונות יכולות להיות ברוב הפורמטים שבהם סמל ההבהוב מנוע עיבוד יכול להציג, כולל PNG, JPEG, BMP, ICO ועוד. SVG לא נתמך. תוספים לא ארוזים חייבים להשתמש בתמונות PNG.
הסבר קצר (שם פריט)
ההסבר הקצר, או הכותרת, מופיעים כאשר המשתמש מחזיק את סמן העכבר מעל סמל התוסף בסרגל הכלים. הוא נכלל גם בטקסט הנגיש שקוראי מסך מקריאים כאשר לוחצים על הלחצן להתמקד.
ההסבר הקצר שמוגדר כברירת מחדל מוגדר באמצעות השדה "default_title"
של המפתח "action"
ב-manifest.json
.
אפשר גם להגדיר זאת באופן פרוגרמטי על ידי שליחת קריאה ל-action.setTitle()
.
תג
הפעולות יכולות להציג 'תג' — שכבת טקסט מעל לסמל. כך אפשר מעדכנים את הפעולה כך שתוצג כמות קטנה של מידע על מצב התוסף. כמו מונה. התג כולל רכיב טקסט וצבע רקע. מכיוון שהמקום מוגבל, אנחנו ממליצים שהטקסט של התג יכלול עד ארבעה תווים.
כדי ליצור תג, מגדירים אותו באופן פרוגרמטי על ידי קריאה אל action.setBadgeBackgroundColor()
action.setBadgeText()
. אין הגדרת ברירת מחדל לתג במניפסט. ערכי צבע התג
יכול להיות מערך של ארבעה מספרים שלמים בין 0 ל-255 שמרכיבים את צבע ה-RGBA
או מחרוזת עם ערך CSS color.
chrome.action.setBadgeBackgroundColor(
{color: [0, 255, 0, 0]}, // Green
() => { /* ... */ },
);
chrome.action.setBadgeBackgroundColor(
{color: '#00FF00'}, // Also green
() => { /* ... */ },
);
chrome.action.setBadgeBackgroundColor(
{color: 'green'}, // Also, also green
() => { /* ... */ },
);
חלון קופץ
חלון קופץ של פעולה מוצג כשהמשתמש לוחץ על לחצן הפעולה של התוסף בסרגל הכלים. החלון הקופץ יכול להכיל כל תוכן HTML שרוצים, וגודלו יותאם באופן אוטומטי את התוכן שלו. גודל החלון הקופץ צריך להיות בין 25x25 לבין 800x600 פיקסלים.
החלון הקופץ מוגדר בהתחלה על ידי המאפיין "default_popup"
במפתח "action"
ב-
קובץ manifest.json
. אם המאפיין קיים, הוא צריך להפנות לנתיב יחסי בתוך התוסף
אפשר גם לעדכן אותו באופן דינמי כדי להצביע לנתיב יחסי אחר באמצעות
אמצעי תשלום אחד (action.setPopup()
).
תרחישים לדוגמה
מצב כל כרטיסייה
פעולות של תוספים יכולות להיות עם מצבים שונים בכל כרטיסייה. כדי להגדיר ערך לאדם ספציפי
משתמשים במאפיין tabId
שבשיטות ההגדרה של ה-API action
. לדוגמה, כדי
להגדיר את הטקסט של התג בכרטיסייה ספציפית, ואז לבצע פעולה כלשהי:
function getTabId() { /* ... */}
function getTabBadge() { /* ... */}
chrome.action.setBadgeText(
{
text: getTabBadge(tabId),
tabId: getTabId(),
},
() => { ... }
);
אם המאפיין tabId
לא נשמר, המערכת מתייחסת להגדרה כהגדרה גלובלית. ספציפי לכרטיסייה
ההגדרות מקבלות עדיפות על פני הגדרות גלובליות.
מצב מופעל
כברירת מחדל, פעולות בסרגל הכלים מופעלות (ניתנות ללחיצה) בכל כרטיסייה. אפשר לשלוט בכך באמצעות
action.enable()
ו-action.disable()
. הפעולה הזו משפיעה רק אם החלון הקופץ (אם יש כזה) או
אירוע אחד (action.onClicked
) נשלח לתוסף. היא לא משפיעה על נוכחות הפעולה.
בסרגל הכלים.
דוגמאות
בדוגמאות הבאות אפשר לראות דרכים נפוצות לשימוש בתוספים. כדי לנסות את ה-API הזה להתקין את הדוגמה של Action API מchrome-extension-samples של מאגר הנתונים.
הצגת חלון קופץ
לעיתים קרובות, תוסף מציג חלון קופץ כשהמשתמש לוחץ על הפעולה של התוסף. שפת תרגום
להטמיע את זה בתוסף שלך, להצהיר על החלון הקופץ ב-manifest.json
ולציין את הקוד
תוכן ש-Chrome אמור להציג בחלון הקופץ.
// manifest.json
{
"name": "Action popup demo",
"version": "1.0",
"manifest_version": 3,
"action": {
"default_title": "Click to view a popup",
"default_popup": "popup.html"
}
}
<!-- popup.html -->
<!DOCTYPE html>
<html>
<head>
<style>
html {
min-height: 5em;
min-width: 10em;
background: salmon;
}
</style>
</head>
<body>
<p>Hello, world!</p>
</body>
</html>
החדרת סקריפט תוכן בלחיצה
תבנית נפוצה של תוספים היא חשיפת התכונה הראשית שלהם באמצעות פעולה. הדוגמה הבאה ממחישה את הדפוס הזה. כשהמשתמש לוחץ על הפעולה, התוסף מחדיר סקריפט תוכן לדף הנוכחי. סקריפט התוכן מציג התראה לאימות שהכול עבד כצפוי.
// manifest.json
{
"name": "Action script injection demo",
"version": "1.0",
"manifest_version": 3,
"action": {
"default_title": "Click to show an alert"
},
"permissions": ["activeTab", "scripting"],
"background": {
"service_worker": "background.js"
}
}
// background.js
chrome.action.onClicked.addListener((tab) => {
chrome.scripting.executeScript({
target: {tabId: tab.id},
files: ['content.js']
});
});
// content.js
alert('Hello, world!');
אמולציה של פעולות עם תוכן הצהרתי
הדוגמה הזו מראה איך לוגיקת הרקע של תוסף יכולה (א) להשבית פעולה כברירת מחדל וגם (ב) להשתמש ב-declarativeContent כדי להפעיל את הפעולה באתרים ספציפיים.
// service-worker.js
// Wrap in an onInstalled callback to avoid unnecessary work
// every time the service worker is run
chrome.runtime.onInstalled.addListener(() => {
// Page actions are disabled by default and enabled on select tabs
chrome.action.disable();
// Clear all rules to ensure only our expected rules are set
chrome.declarativeContent.onPageChanged.removeRules(undefined, () => {
// Declare a rule to enable the action on example.com pages
let exampleRule = {
conditions: [
new chrome.declarativeContent.PageStateMatcher({
pageUrl: {hostSuffix: '.example.com'},
})
],
actions: [new chrome.declarativeContent.ShowAction()],
};
// Finally, apply our new array of rules
let rules = [exampleRule];
chrome.declarativeContent.onPageChanged.addRules(rules);
});
});
סוגים
OpenPopupOptions
מאפיינים
-
windowId
מספר אופציונלי
מזהה החלון שבו יש לפתוח את החלון הקופץ של הפעולה. אם לא צויין ערך, ברירת המחדל תהיה החלון הפעיל הנוכחי.
TabDetails
מאפיינים
-
tabId
מספר אופציונלי
המזהה של הכרטיסייה שעבורה רוצים לבצע שאילתה. אם לא מצוינת כרטיסייה, מוחזר המצב שאינו ספציפי לכרטיסייה.
UserSettings
האוסף של ההגדרות שנבחרו על ידי המשתמש שקשורות לפעולה של תוסף.
מאפיינים
-
isOnToolbar
בוליאני
אם סמל הפעולה של התוסף גלוי בחלונות הדפדפן בסרגל הכלים ברמה העליונה (כלומר, אם התוסף 'הוצמד' על ידי המשתמש).
שיטות
disable()
chrome.action.disable(
tabId?: number,
callback?: function,
)
משבית את הפעולה עבור כרטיסייה.
פרמטרים
-
tabId
מספר אופציונלי
מזהה הכרטיסייה שעבורה רוצים לשנות את הפעולה.
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
enable()
chrome.action.enable(
tabId?: number,
callback?: function,
)
הפעלת הפעולה בכרטיסייה. כברירת מחדל, הפעולות מופעלות.
פרמטרים
-
tabId
מספר אופציונלי
מזהה הכרטיסייה שעבורה רוצים לשנות את הפעולה.
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
getBadgeBackgroundColor()
chrome.action.getBadgeBackgroundColor(
details: TabDetails,
callback?: function,
)
הפונקציה מקבלת את צבע הרקע של הפעולה.
פרמטרים
-
פרטים
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: ColorArray) => void
-
תוצאה
-
החזרות
-
Promise<browserAction.ColorArray>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
getBadgeText()
chrome.action.getBadgeText(
details: TabDetails,
callback?: function,
)
הפונקציה מקבלת את הטקסט של התג של הפעולה. אם לא תציינו כרטיסייה, מוחזר הטקסט של התג שלא ספציפי לכרטיסייה. אם האפשרות displayActionCountAsBadgeText מופעלת, יוחזר טקסט של placeholder, אלא אם קיימת ההרשאה declarativeNetRequestFeedback או אם סיפקת טקסט של תג ספציפי לכרטיסייה.
פרמטרים
-
פרטים
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: string) => void
-
תוצאה
מחרוזת
-
החזרות
-
Promise<string>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
getBadgeTextColor()
chrome.action.getBadgeTextColor(
details: TabDetails,
callback?: function,
)
הפונקציה מקבלת את צבע הטקסט של הפעולה.
פרמטרים
-
פרטים
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: ColorArray) => void
-
תוצאה
-
החזרות
-
Promise<browserAction.ColorArray>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
getPopup()
chrome.action.getPopup(
details: TabDetails,
callback?: function,
)
קבלת מסמך ה-HTML שהוגדר כחלון הקופץ של הפעולה הזו.
פרמטרים
-
פרטים
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: string) => void
-
תוצאה
מחרוזת
-
החזרות
-
Promise<string>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
getTitle()
chrome.action.getTitle(
details: TabDetails,
callback?: function,
)
מקבל את שם הפעולה.
פרמטרים
-
פרטים
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(result: string) => void
-
תוצאה
מחרוזת
-
החזרות
-
Promise<string>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
getUserSettings()
chrome.action.getUserSettings(
callback?: function,
)
מחזירה את ההגדרות שנבחרו על ידי המשתמש בקשר לפעולה של תוסף.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(userSettings: UserSettings) => void
-
userSettings
-
החזרות
-
Promise<UserSettings>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
isEnabled()
chrome.action.isEnabled(
tabId?: number,
callback?: function,
)
מציין אם פעולת התוסף מופעלת עבור כרטיסייה (או באופן גלובלי אם לא צוין tabId
). פעולות שהופעלו רק באמצעות declarativeContent
תמיד מחזירות את הערך False.
פרמטרים
-
tabId
מספר אופציונלי
מזהה הכרטיסייה שאת הסטטוס שלה רוצים לבדוק.
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(isEnabled: boolean) => void
-
isEnabled
בוליאני
הערך יהיה True אם פעולת התוסף מופעלת.
-
החזרות
-
Promise<boolean>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
openPopup()
chrome.action.openPopup(
options?: OpenPopupOptions,
callback?: function,
)
פתיחת החלון הקופץ של התוסף. בגרסאות 118 עד 126 של Chrome, האפשרות הזו זמינה רק לתוספים שהותקנו באמצעות מדיניות.
פרמטרים
-
אפשרויות
OpenPopupOptions אופציונלי
מציינת אפשרויות לפתיחת החלון הקופץ.
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
setBadgeBackgroundColor()
chrome.action.setBadgeBackgroundColor(
details: object,
callback?: function,
)
הגדרת צבע הרקע של התג.
פרמטרים
-
פרטים
אובייקט
-
color [צבע]
string | ColorArray
מערך של ארבעה מספרים שלמים בטווח [0,255] שמרכיבים את צבע ה-RGBA של התג. לדוגמה, אדום אטום הוא
[255, 0, 0, 255]
. היא יכולה להיות גם מחרוזת עם ערך CSS, ואדום אטום הוא#FF0000
או#F00
. -
tabId
מספר אופציונלי
מגביל את השינוי למועד שבו כרטיסייה מסוימת נבחרת. מתאפס באופן אוטומטי כשהכרטיסייה נסגרת.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
setBadgeText()
chrome.action.setBadgeText(
details: object,
callback?: function,
)
מגדיר את הטקסט של התג עבור הפעולה. התג מוצג מעל הסמל.
פרמטרים
-
פרטים
אובייקט
-
tabId
מספר אופציונלי
מגביל את השינוי למועד שבו כרטיסייה מסוימת נבחרת. מתאפס באופן אוטומטי כשהכרטיסייה נסגרת.
-
טקסט
מחרוזת אופציונלי
אפשר להעביר כל מספר של תווים, אבל אפשר להזין רק כ-4 תווים. אם מעבירים מחרוזת ריקה (
''
), הטקסט של התג נמחק. אם מציינים אתtabId
והערךtext
הוא null, הטקסט בכרטיסייה שצוינה יימחק וברירת המחדל שלו תהיה הטקסט של התג הגלובלי.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
setBadgeTextColor()
chrome.action.setBadgeTextColor(
details: object,
callback?: function,
)
הגדרת צבע הטקסט של התג.
פרמטרים
-
פרטים
אובייקט
-
color [צבע]
string | ColorArray
מערך של ארבעה מספרים שלמים בטווח [0,255] שמרכיבים את צבע ה-RGBA של התג. לדוגמה, אדום אטום הוא
[255, 0, 0, 255]
. היא יכולה להיות גם מחרוזת עם ערך CSS, ואדום אטום הוא#FF0000
או#F00
. אם לא תגדירו את הערך הזה, ייבחר באופן אוטומטי צבע שמנוגד לצבע הרקע של התג, כך שהטקסט יהיה גלוי. צבעים עם ערכי אלפא שוות ערך ל-0 לא יוגדרו ויחזירו שגיאה. -
tabId
מספר אופציונלי
מגביל את השינוי למועד שבו כרטיסייה מסוימת נבחרת. מתאפס באופן אוטומטי כשהכרטיסייה נסגרת.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
setIcon()
chrome.action.setIcon(
details: object,
callback?: function,
)
מגדיר את הסמל של הפעולה. ניתן לציין את הסמל כנתיב לקובץ תמונה או כנתוני פיקסל של רכיב בד קנבס, או כמילון של אחד מהם. יש לציין את המאפיין path או את המאפיין imageData.
פרמטרים
-
פרטים
אובייקט
-
imageData
ImageData | אובייקט אופציונלי
אובייקט ImageData או מילון {size -> ImageData} מייצג את הסמל שיש להגדיר. אם הסמל מצוין כמילון, התמונה שבה ייעשה שימוש בפועל תיבחר בהתאם לדחיסות הפיקסלים של המסך. אם מספר הפיקסלים של התמונה שמתאימים ליחידה אחת של שטח מסך שווה ל-
scale
, תיבחר תמונה בגודלscale
* n, כאשר n הוא גודל הסמל בממשק המשתמש. צריך לציין לפחות תמונה אחת. חשוב לשים לב ש-'details.imageData = foo' זהה ל-'details.imageData = {'16': foo}' -
נתיב
string | אובייקט אופציונלי
נתיב תמונה יחסי או מילון {size -> נתיב תמונה יחסי} שמצביע על סמל להגדרה. אם הסמל מצוין כמילון, התמונה שבה ייעשה שימוש בפועל תיבחר בהתאם לדחיסות הפיקסלים של המסך. אם מספר הפיקסלים של התמונה שמתאימים ליחידה אחת של שטח מסך שווה ל-
scale
, תיבחר תמונה בגודלscale
* n, כאשר n הוא גודל הסמל בממשק המשתמש. צריך לציין לפחות תמונה אחת. שימו לב ש-'details.path = foo' זהה ל-'details.path = {'16': foo}' -
tabId
מספר אופציונלי
מגביל את השינוי למועד שבו כרטיסייה מסוימת נבחרת. מתאפס באופן אוטומטי כשהכרטיסייה נסגרת.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome מגרסה 96 ואילךהבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
setPopup()
chrome.action.setPopup(
details: object,
callback?: function,
)
מגדיר את מסמך ה-HTML כך שייפתח כחלון קופץ כשהמשתמש ילחץ על סמל הפעולה.
פרמטרים
-
פרטים
אובייקט
-
פריט קופץ
מחרוזת
הנתיב היחסי לקובץ ה-HTML שיוצג בחלון קופץ. אם המדיניות מוגדרת למחרוזת הריקה (
''
), לא יוצג חלון קופץ. -
tabId
מספר אופציונלי
מגביל את השינוי למועד שבו כרטיסייה מסוימת נבחרת. מתאפס באופן אוטומטי כשהכרטיסייה נסגרת.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.
setTitle()
chrome.action.setTitle(
details: object,
callback?: function,
)
קביעת שם הפעולה. השינויים יוצגו בהסבר הקצר.
פרמטרים
-
פרטים
אובייקט
-
tabId
מספר אופציונלי
מגביל את השינוי למועד שבו כרטיסייה מסוימת נבחרת. מתאפס באופן אוטומטי כשהכרטיסייה נסגרת.
-
title
מחרוזת
המחרוזת שהפעולה צריכה להציג כשמעבירים את העכבר מעליה.
-
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.