תאריך הרענון: 2026-09-25 robots: noindex
תיאור
chrome.types API מכיל הצהרות על סוגים ב-Chrome.
הגדרות Chrome
אב הטיפוס ChromeSetting מספק קבוצה משותפת של פונקציות (get(), set() ו-clear()), וגם מפרסם אירועים (onChange) להגדרות של דפדפן Chrome. בדוגמאות של הגדרות לשרת proxy אפשר לראות איך אמורים להשתמש בפונקציות האלה.
היקף ומחזור חיים
ב-Chrome יש שלושה היקפים שונים של הגדרות דפדפן:
regular- ההגדרות שמוגדרות בהיקף
regularחלות על חלונות דפדפן רגילים ועוברות בירושה לחלונות פרטיים אם לא מתבצעת החלפה שלהן. ההגדרות האלה נשמרות בדיסק ונשארות בתוקף עד שהתוסף השולט מנקה אותן, או עד שהתוסף השולט מושבת או מוסר. incognito_persistent- ההגדרות שמוגדרות בהיקף
incognito_persistentחלות רק על חלונות פרטיים. במקרים כאלה, ההגדרות שלregularמשתנות. ההגדרות האלה מאוחסנות בדיסק ונשארות במקומן עד שהתוסף השולט מנקה אותן, או עד שהתוסף השולט מושבת או מוסר. incognito_session_only- ההגדרות שמוגדרות בהיקף
incognito_session_onlyחלות רק על חלונות פרטיים. הן מבטלות את ההגדרות שלregularושלincognito_persistent. ההגדרות האלה לא נשמרות בדיסק והן נמחקות כשסוגרים את החלון האנונימי האחרון. אפשר להגדיר אותם רק כשחלון פרטי אחד לפחות פתוח.
קדימות
הגדרות ב-Chrome מנוהלות בשכבות שונות. ברשימה הבאה מתוארות השכבות שעשויות להשפיע על ההגדרות בפועל, בסדר עולה של עדיפות.
- הגדרות המערכת שסופקו על ידי מערכת ההפעלה
- פרמטרים של שורת הפקודה
- הגדרות שסופקו על ידי תוספים
- מדיניות
כפי שאפשר להבין מהרשימה, יכול להיות שמדיניות תבטל שינויים שציינתם באמצעות התוסף. אפשר להשתמש בפונקציה get() כדי לקבוע אם התוסף יכול לספק הגדרה או אם ההגדרה הזו תבוטל.
כמו שצוין למעלה, ב-Chrome אפשר להשתמש בהגדרות שונות לחלונות רגילים ולחלונות פרטיים. הדוגמה הבאה ממחישה את ההתנהגות הזו. נניח שאין מדיניות שמבטלת את ההגדרות, ושתוסף יכול להגדיר הגדרות לחלונות רגילים (R) ולהגדיר הגדרות לחלונות פרטיים (I).
- אם מוגדר רק (R), ההגדרות האלה תקפות גם לחלונות רגילים וגם לחלונות במצב פרטי.
- אם מוגדר רק (I), ההגדרות האלה תקפות רק לחלונות במצב פרטי. חלונות רגילים משתמשים בהגדרות שנקבעו בשכבות התחתונות (אפשרויות של שורת הפקודה והגדרות המערכת).
- אם גם (R) וגם (I) מוגדרים, ההגדרות הרלוונטיות ישמשו לחלונות רגילים ולחלונות במצב פרטי.
אם שני תוספים או יותר רוצים להגדיר את אותה הגדרה לערכים שונים, התוסף שהותקן לאחרונה מקבל קדימות על פני התוספים האחרים. אם התוסף שהותקן לאחרונה מגדיר רק את (I), ההגדרות של חלונות רגילים יכולות להיות מוגדרות על ידי תוספים שהותקנו קודם.
הערך האפקטיבי של הגדרה הוא הערך שמתקבל אחרי שמביאים בחשבון את כללי העדיפות. הוא משמש את Chrome.
סוגים
ChromeSetting
ממשק שמאפשר גישה להגדרה של דפדפן Chrome. accessibilityFeatures לדוגמה.
מאפיינים
-
onChange
Event<functionvoidvoid>
האירוע מופעל אחרי שההגדרה משתנה.
הפונקציה
onChange.addListenerנראית כך:(callback: function) => {...}
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
incognitoSpecific
boolean אופציונלי
האם הערך שהשתנה ספציפי לסשן במצב פרטי. המאפיין הזה יהיה קיים רק אם המשתמש הפעיל את התוסף במצב פרטי.
-
levelOfControl
רמת השליטה בהגדרה.
-
ערך
T
הערך של ההגדרה אחרי השינוי.
-
-
-
-
נקה
void
Promiseמחיקת ההגדרה ושיחזור ערך ברירת המחדל.
הפונקציה
clearנראית כך:(details: object, callback?: function) => {...}
-
פרטים
אובייקט
איזו הגדרה רוצים לנקות.
-
היקף
ChromeSettingScope optional
איפה משנים את ההגדרה (ברירת מחדל: רגילה).
-
-
callback
פונקציה אופציונלית
הפרמטר
callbackנראה כך:() => void
-
החזרות
Promise<void>
Chrome 96 ואילךהפונקציה נקראת בסיום פעולת הניקוי.
התמיכה ב-Promises קיימת רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
-
-
get
void
Promiseהפונקציה מחזירה את הערך של הגדרה.
הפונקציה
getנראית כך:(details: object, callback?: function) => {...}
-
פרטים
אובייקט
איזו הגדרה כדאי לקחת בחשבון.
-
פרטי
boolean אופציונלי
האם להחזיר את הערך שחל על סשן הגלישה בסתר (ברירת המחדל היא false).
-
-
callback
פונקציה אופציונלית
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
פרטים של הערך שבתוקף כרגע.
-
incognitoSpecific
boolean אופציונלי
האם הערך האפקטיבי ספציפי לסשן הגלישה בסתר. המאפיין הזה יהיה קיים רק אם המאפיין
incognitoבפרמטרdetailsשלget()היה True. -
levelOfControl
רמת השליטה בהגדרה.
-
ערך
T
הערך של ההגדרה.
-
-
-
החזרות
Promise<object>
Chrome 96 ואילךהתמיכה ב-Promises קיימת רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
-
-
הוגדר
void
Promiseהגדרת הערך של הגדרה.
הפונקציה
setנראית כך:(details: object, callback?: function) => {...}
-
פרטים
אובייקט
איזו הגדרה לשנות.
-
היקף
ChromeSettingScope optional
איפה מגדירים את ההגדרה (ברירת מחדל: רגילה).
-
ערך
T
הערך של ההגדרה. שימו לב: לכל הגדרה יש סוג ערך ספציפי, שמתואר יחד עם ההגדרה. תוסף לא צריך להגדיר ערך מסוג אחר.
-
-
callback
פונקציה אופציונלית
הפרמטר
callbackנראה כך:() => void
-
החזרות
Promise<void>
Chrome 96 ואילךמופעלת בסיום פעולת ההגדרה.
התמיכה ב-Promises קיימת רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
-
ChromeSettingScope
ההיקף של ChromeSetting. אחת מהאפשרויות
-
regular: הגדרה לפרופיל הרגיל (שמועברת לפרופיל במצב פרטי אם לא מוגדרת הגדרה אחרת במקום אחר), -
regular\_only: הגדרה לפרופיל הרגיל בלבד (לא עוברת בירושה לפרופיל במצב פרטי), -
incognito\_persistent: הגדרה לפרופיל במצב פרטי שנשמרת גם אחרי הפעלה מחדש של הדפדפן (מבטלת את ההעדפות הרגילות), -
incognito\_session\_only: הגדרה לפרופיל במצב פרטי שאפשר להגדיר רק במהלך שימוש פרטי, והיא נמחקת כשמסיימים את השימוש הפרטי (מבטלת את ההעדפות הרגילות ואת ההעדפות של incognito_persistent).
ספירה
'רגיל'
'regular_only'
"incognito_persistent"
"incognito_session_only"
LevelOfControl
אחת מהאפשרויות
-
not\_controllable: אי אפשר לשלוט בתוסף הזה באמצעות אף תוסף אחר -
controlled\_by\_other\_extensions: נשלט על ידי תוספים עם עדיפות גבוהה יותר -
controllable\_by\_this\_extension: אפשר לשלוט בתוסף הזה -
controlled\_by\_this\_extension: נשלט על ידי התוסף הזה
ספירה
"not_controllable"
"controlled_by_other_extensions"
"controllable_by_this_extension"
"controlled_by_this_extension"