chrome.action

설명

chrome.action API를 사용하여 Chrome 툴바에서 확장 프로그램 아이콘을 제어합니다.

작업 아이콘은 검색주소창 옆의 브라우저 툴바에 표시됩니다. 설치가 완료되면 확장 프로그램 메뉴 (퍼즐 조각 아이콘)에 확장 프로그램이 표시됩니다. 사용자는 확장 프로그램 아이콘을 툴바에 고정할 수 있습니다.

가용성

Chrome 88 이상 MV3 이상

매니페스트

이 API를 사용하려면 매니페스트에서 다음 키를 선언해야 합니다.

"action"

chrome.action API를 사용하려면 3"manifest_version"를 지정하고 매니페스트 파일"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" 키를 항상 포함하는 것이 좋습니다.

개념 및 사용법

UI 요소

아이콘

아이콘은 확장 프로그램 툴바에 있는 기본 이미지이며 "default_icon" 키로 설정됩니다. 매니페스트의 "action" 키. 아이콘은 가로와 세로의 기기 독립형 픽셀 (DIP) 16개여야 합니다.

"default_icon" 키는 이미지 경로의 크기 사전입니다. Chrome에서 사용하는 아이콘 사용할 이미지 크기를 선택합니다 일치검색을 찾을 수 없는 경우 Chrome은 가장 가까운 검색 결과를 선택합니다. 크기를 조절하여 이미지 품질에 영향을 줄 수 있습니다.

1.5x 또는 1.2x와 같이 덜 일반적인 배율을 사용하는 기기는 아이콘에 여러 크기를 제공하는 것이 좋습니다. 또한 아이콘 표시 크기가 변하지 않도록 확장 프로그램을 미래에 대비합니다. 하지만 단일 크기만 제공하는 경우 "default_icon" 키를 사전 대신 단일 아이콘에 대한 경로가 포함된 문자열.

action.setIcon()를 호출하여 프로그래매틱 방식으로 확장 프로그램의 아이콘을 설정할 수도 있습니다. 을 사용하면 다른 이미지 경로를 지정하거나 HTML 캔버스를 사용하여 동적으로 생성된 아이콘을 제공할 수 있습니다. 요소 또는 확장 프로그램 서비스 워커에서 설정하는 경우 화면 밖 canvas 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 파일에서 설치되는 패킹된 확장 프로그램의 경우 이미지는 대부분의 경우 Blink 표시할 수 있습니다. SVG는 지원되지 않습니다. 압축해제된 확장 프로그램은 PNG 이미지를 사용해야 합니다.

도움말 (제목)

도움말 또는 제목은 사용자가 있습니다. 또한 버튼이 클릭될 때 스크린 리더가 읽는 액세스 가능한 텍스트에도 집중하세요.

기본 도움말은 manifest.json에서 "action" 키의 "default_title" 필드를 사용하여 설정됩니다. action.setTitle()를 호출하여 프로그래매틱 방식으로 설정할 수도 있습니다.

배지

작업에서 '배지'를 선택적으로 표시할 수 있습니다. 아이콘 위에 약간의 텍스트가 겹쳐서 표시됩니다. 이렇게 하면 작업을 업데이트하여 확장 프로그램의 상태에 대한 소량의 정보를 표시합니다. 카운터와 같은 역할을 합니다. 배지에는 텍스트 구성요소와 배경 색상이 있습니다. 공간이 제한되어 있기 때문에 배지 텍스트는 4자 이하를 사용하는 것이 좋습니다.

배지를 만들려면 action.setBadgeBackgroundColor()를 호출하고 action.setBadgeText() 매니페스트에는 기본 배지 설정이 없습니다. 배지 색상 값 는 배지 또는 CSS 색상 값이 포함된 문자열입니다.

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() 메서드를 사용하여 지도 가장자리에 패딩을 추가할 수 있습니다.

사용 사례

탭별 상태

확장 프로그램 작업은 각 탭마다 다른 상태를 가질 수 있습니다. 개별 사용자에 대한 값을 설정하려면 다음 단계를 따르세요. 탭에서 action API의 설정 메서드에서 tabId 속성을 사용합니다. 예를 들어 특정 탭의 배지 텍스트를 설정하려면 다음과 같이 합니다.

function getTabId() { /* ... */}
function getTabBadge() { /* ... */}

chrome.action.setBadgeText(
  {
    text: getTabBadge(tabId),
    tabId: getTabId(),
  },
  () => { ... }
);

tabId 속성을 생략하면 설정이 전역 설정으로 처리됩니다. 탭 전용 설정이 전체 설정보다 우선합니다.

사용 설정 상태

기본적으로 툴바 작업은 모든 탭에서 사용 설정되어 있습니다 (클릭 가능). 사용자는 action.enable()action.disable() 메서드 이는 팝업 (있는 경우) 또는 action.onClicked 이벤트가 확장 프로그램으로 전송됩니다. 작업의 존재에는 영향을 미치지 않으며 를 클릭합니다.

다음 예는 광고 확장에서 작업이 사용되는 몇 가지 일반적인 방법을 보여줍니다. 이 API를 사용해 보려면 chrome-extension-samples에서 Action API 예시 설치 저장소

팝업 표시

사용자가 확장 프로그램의 작업을 클릭할 때 확장 프로그램에서 팝업을 표시하는 것이 일반적입니다. 받는사람 자체 확장 프로그램에서 이를 구현하고 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를 사용하여 작업 에뮬레이션

이 예에서는 확장 프로그램의 백그라운드 로직이 (a) 기본적으로 작업을 사용 중지하고 (b) 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

Chrome 99 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

속성

  • windowId

    숫자 선택사항

    작업 팝업을 열 창의 ID입니다. 지정되지 않은 경우 기본값은 현재 활성 창입니다.

TabDetails

속성

  • tabId

    숫자 선택사항

    상태를 쿼리할 탭의 ID입니다. 탭을 지정하지 않으면 특정 탭이 아닌 상태가 반환됩니다.

UserSettings

Chrome 91 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

확장 프로그램의 작업과 관련된 사용자 지정 설정 모음입니다.

속성

  • isOnToolbar

    부울

    확장 프로그램의 작업 아이콘이 브라우저 창에 표시되는지 여부 최상위 툴바 (예: 사용자가 확장 프로그램을 '고정'했는지 여부)

UserSettingsChange

대기 중

속성

  • isOnToolbar

    불리언 선택사항

    확장 프로그램의 작업 아이콘이 브라우저 창에 표시되는지 여부 최상위 툴바 (예: 사용자가 확장 프로그램을 '고정'했는지 여부)

메서드

disable()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.disable(
  tabId?: number,
  callback?: function,
)

탭에 대한 작업을 사용 중지합니다.

매개변수

  • tabId

    숫자 선택사항

    작업을 수정하려는 탭의 ID입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

enable()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.enable(
  tabId?: number,
  callback?: function,
)

탭에 대한 작업을 사용 설정합니다. 기본적으로 작업은 사용 설정되어 있습니다.

매개변수

  • tabId

    숫자 선택사항

    작업을 수정하려는 탭의 ID입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getBadgeBackgroundColor()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.getBadgeBackgroundColor(
  details: TabDetails,
  callback?: function,
)

작업의 배경 색상을 가져옵니다.

매개변수

  • 세부정보
  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: ColorArray) => void

반환 값

  • 프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getBadgeText()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.getBadgeText(
  details: TabDetails,
  callback?: function,
)

작업의 배지 텍스트를 가져옵니다. 탭을 지정하지 않으면 탭이 아닌 배지 텍스트가 반환됩니다. displayActionCountAsBadgeText가 사용 설정된 경우, declarativeNetRequestFeedback 권한이 있거나 탭별 배지 텍스트를 제공하지 않은 경우 자리표시자 텍스트가 반환됩니다.

매개변수

  • 세부정보
  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: string) => void

    • 결과

      문자열

반환 값

  • 프로미스<string>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getBadgeTextColor()

<ph type="x-smartling-placeholder"></ph> 프로미스 Chrome 110 이상
chrome.action.getBadgeTextColor(
  details: TabDetails,
  callback?: function,
)

작업의 텍스트 색상을 가져옵니다.

매개변수

  • 세부정보
  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: ColorArray) => void

반환 값

  • 프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getPopup()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.getPopup(
  details: TabDetails,
  callback?: function,
)

이 작업의 팝업으로 설정된 HTML 문서를 가져옵니다.

매개변수

  • 세부정보
  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: string) => void

    • 결과

      문자열

반환 값

  • 프로미스<string>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getTitle()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.getTitle(
  details: TabDetails,
  callback?: function,
)

작업의 제목을 가져옵니다.

매개변수

  • 세부정보
  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: string) => void

    • 결과

      문자열

반환 값

  • 프로미스<string>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getUserSettings()

<ph type="x-smartling-placeholder"></ph> 프로미스 Chrome 91 이상
chrome.action.getUserSettings(
  callback?: function,
)

확장 프로그램의 작업과 관련된 사용자 지정 설정을 반환합니다.

매개변수

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (userSettings: UserSettings) => void

반환 값

  • Promise&lt;UserSettings&gt;

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

isEnabled()

<ph type="x-smartling-placeholder"></ph> 프로미스 Chrome 110 이상
chrome.action.isEnabled(
  tabId?: number,
  callback?: function,
)

확장 프로그램 작업이 탭에 사용 설정되었는지 또는 tabId가 제공되지 않은 경우 전역적으로 사용 설정되었는지 여부를 나타냅니다. declarativeContent만 사용하여 사용 설정된 작업은 항상 false를 반환합니다.

매개변수

  • tabId

    숫자 선택사항

    사용 설정 상태를 확인하려는 탭의 ID입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (isEnabled: boolean) => void

    • isEnabled

      부울

      확장 프로그램 작업이 사용 설정된 경우 true입니다.

반환 값

  • Promise&lt;boolean&gt;

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

openPopup()

<ph type="x-smartling-placeholder"></ph> 프로미스 Chrome 127 이상
chrome.action.openPopup(
  options?: OpenPopupOptions,
  callback?: function,
)

확장 프로그램의 팝업을 엽니다. Chrome 118부터 Chrome 126까지는 정책에 설치된 확장 프로그램에서만 이 기능을 사용할 수 있습니다.

매개변수

  • 옵션

    OpenPopupOptions 선택사항

    팝업을 여는 옵션을 지정합니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setBadgeBackgroundColor()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.setBadgeBackgroundColor(
  details: object,
  callback?: function,
)

배지의 배경 색상을 설정합니다.

매개변수

  • 세부정보

    객체

    • 색상

      string | ColorArray

      배지의 RGBA 색상을 구성하는 [0,255] 범위의 4개 정수의 배열입니다. 예를 들어 불투명한 빨간색은 [255, 0, 0, 255]입니다. CSS 값이 있는 문자열일 수도 있으며, 불투명한 빨간색은 #FF0000 또는 #F00입니다.

    • tabId

      숫자 선택사항

      특정 탭이 선택된 경우에만 변경을 제한합니다. 탭을 닫으면 자동으로 재설정됩니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setBadgeText()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.setBadgeText(
  details: object,
  callback?: function,
)

작업의 배지 텍스트를 설정합니다. 배지는 아이콘 위에 표시됩니다.

매개변수

  • 세부정보

    객체

    • tabId

      숫자 선택사항

      특정 탭이 선택된 경우에만 변경을 제한합니다. 탭을 닫으면 자동으로 재설정됩니다.

    • 텍스트

      문자열(선택사항)

      전달할 수 있는 문자의 수에는 제한이 없지만 공백에 들어갈 수 있는 문자는 약 4개입니다. 빈 문자열 ('')이 전달되면 배지 텍스트가 삭제됩니다. tabId이 지정되고 text이 null이면 지정된 탭의 텍스트가 삭제되고 기본적으로 전역 배지 텍스트가 됩니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setBadgeTextColor()

<ph type="x-smartling-placeholder"></ph> 프로미스 Chrome 110 이상
chrome.action.setBadgeTextColor(
  details: object,
  callback?: function,
)

배지의 텍스트 색상을 설정합니다.

매개변수

  • 세부정보

    객체

    • 색상

      string | ColorArray

      배지의 RGBA 색상을 구성하는 [0,255] 범위의 4개 정수의 배열입니다. 예를 들어 불투명한 빨간색은 [255, 0, 0, 255]입니다. CSS 값이 있는 문자열일 수도 있으며, 불투명한 빨간색은 #FF0000 또는 #F00입니다. 이 값을 설정하지 않으면 배지의 배경 색상과 대비되는 색상이 자동으로 선택되어 텍스트가 표시됩니다. 알파 값이 0인 색상은 설정되지 않으며 오류를 반환합니다.

    • tabId

      숫자 선택사항

      특정 탭이 선택된 경우에만 변경을 제한합니다. 탭을 닫으면 자동으로 재설정됩니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setIcon()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.setIcon(
  details: object,
  callback?: function,
)

작업의 아이콘을 설정합니다. 아이콘은 이미지 파일의 경로, 캔버스 요소의 픽셀 데이터 또는 이들 중 하나의 사전으로 지정할 수 있습니다. path 또는 imageData 속성을 지정해야 합니다.

매개변수

  • 세부정보

    객체

    • imageData

      ImageData | 객체(선택사항)

      ImageData 객체 또는 사전 {size -> ImageData}는 설정할 아이콘을 나타냅니다. 아이콘이 사전으로 지정된 경우 사용할 실제 이미지는 화면의 픽셀 밀도에 따라 선택됩니다. 한 화면 공간 단위에 맞는 이미지 픽셀 수가 scale와 같으면 크기가 scale * n인 이미지가 선택됩니다. 여기서 n은 UI의 아이콘 크기입니다. 이미지를 하나 이상 지정해야 합니다. 'details.imageData = foo'는 'details.imageData = {'16': foo}'와 동일합니다.

    • 경로

      string | 객체(선택사항)

      상대 이미지 경로 또는 사전 {size -> 상대 이미지 경로}이(가) 설정할 아이콘을 가리킵니다. 아이콘이 사전으로 지정된 경우 사용할 실제 이미지는 화면의 픽셀 밀도에 따라 선택됩니다. 한 화면 공간 단위에 맞는 이미지 픽셀 수가 scale와 같으면 크기가 scale * n인 이미지가 선택됩니다. 여기서 n은 UI의 아이콘 크기입니다. 이미지를 하나 이상 지정해야 합니다. 'details.path = foo' 'details.path = {'16': foo}'와 동일합니다.

    • tabId

      숫자 선택사항

      특정 탭이 선택된 경우에만 변경을 제한합니다. 탭을 닫으면 자동으로 재설정됩니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    Chrome 96 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setPopup()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.setPopup(
  details: object,
  callback?: function,
)

사용자가 작업의 아이콘을 클릭할 때 팝업으로 열리도록 HTML 문서를 설정합니다.

매개변수

  • 세부정보

    객체

    • 팝업

      문자열

      팝업에 표시할 HTML 파일의 상대 경로입니다. 빈 문자열 ('')로 설정하면 팝업이 표시되지 않습니다.

    • tabId

      숫자 선택사항

      특정 탭이 선택된 경우에만 변경을 제한합니다. 탭을 닫으면 자동으로 재설정됩니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setTitle()

<ph type="x-smartling-placeholder"></ph> 프로미스 를 통해 개인정보처리방침을 정의할 수 있습니다.
chrome.action.setTitle(
  details: object,
  callback?: function,
)

작업의 제목을 설정합니다. 도움말에 표시됩니다.

매개변수

  • 세부정보

    객체

    • tabId

      숫자 선택사항

      특정 탭이 선택된 경우에만 변경을 제한합니다. 탭을 닫으면 자동으로 재설정됩니다.

    • 제목

      문자열

      마우스를 올려 놓았을 때 작업이 표시해야 하는 문자열입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 프로미스<void>

    프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

이벤트

onClicked

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

작업 아이콘을 클릭하면 실행됩니다. 작업에 팝업이 있으면 이 이벤트가 실행되지 않습니다.

매개변수

  • 콜백

    함수

    callback 매개변수는 다음과 같습니다.

    (tab: tabs.Tab) => void

onUserSettingsChanged

대기 중
chrome.action.onUserSettingsChanged.addListener(
  callback: function,
)

확장 프로그램의 작업 변경과 관련하여 사용자가 지정한 설정이 있을 때 실행됩니다.

매개변수