설명
chrome.tabs
API를 사용하여 브라우저의 탭 시스템과 상호작용합니다. 이 API를 사용하여 브라우저에서 탭을 만들고 수정하고 재정렬할 수 있습니다.
Tabs API는 탭 조작 및 관리를 위한 기능을 제공할 뿐만 아니라 언어를 선택하고 스크린샷을 찍습니다. 탭의 콘텐츠 스크립트로 커뮤니케이션
권한
대부분의 기능은 사용 권한이 필요하지 않습니다. 예를 들어 새 탭을 만듭니다. 탭 새로고침, 다른 URL로 탐색 등
개발자가 Tabs API를 사용할 때 알아야 하는 세 가지 권한이 있습니다.
- '탭' 권한
이 권한은
chrome.tabs
네임스페이스에 대한 액세스 권한을 부여하지 않습니다. 대신 확장 프로그램이 4에 대해tabs.query()
를 호출할 수 있는 권한을 부여합니다.tabs.Tab
인스턴스의 민감한 속성:url
,pendingUrl
,title
및favIconUrl
입니다.{ "name": "My extension", ... "permissions": [ "tabs" ], ... }
- 호스트 권한
호스트 권한을 사용하면 확장 프로그램이 일치하는 탭의 4가지 민감한 정보를 읽고 쿼리할 수 있습니다.
tabs.Tab
속성 또한 다음과 같은 메서드를 사용하여 일치하는 탭과 직접 상호작용할 수도 있습니다. 유형:tabs.captureVisibleTab()
,tabs.executeScript()
,tabs.insertCSS()
및tabs.removeCSS()
.{ "name": "My extension", ... "host_permissions": [ "http://*/*", "https://*/*" ], ... }
- 'activeTab' 권한
activeTab
는 다음의 현재 탭에 확장 프로그램 임시 호스트 권한을 부여합니다. 사용자 호출에 대한 응답입니다. 호스트 권한과 달리activeTab
는 경고를 트리거하지 않습니다.{ "name": "My extension", ... "permissions": [ "activeTab" ], ... }
사용 사례
다음 섹션에서는 몇 가지 일반적인 사용 사례를 보여줍니다.
새 탭에서 확장 프로그램 페이지 열기
확장 프로그램의 일반적인 패턴은 확장 프로그램이 설치해야 합니다. 다음 예는 그 방법을 보여줍니다.
background.js:
chrome.runtime.onInstalled.addListener(({reason}) => {
if (reason === 'install') {
chrome.tabs.create({
url: "onboarding.html"
});
}
});
현재 탭 가져오기
이 예에서는 확장 프로그램의 서비스 워커가 활성 탭을 현재 포커스가 설정된 창 (또는 포커스가 설정된 Chrome 창이 없는 경우 가장 최근에 포커스가 설정된 창) 이 일반적으로 사용자의 현재 탭으로 생각할 수 있습니다.
async function getCurrentTab() {
let queryOptions = { active: true, lastFocusedWindow: true };
// `tab` will either be a `tabs.Tab` instance or `undefined`.
let [tab] = await chrome.tabs.query(queryOptions);
return tab;
}
function getCurrentTab(callback) {
let queryOptions = { active: true, lastFocusedWindow: true };
chrome.tabs.query(queryOptions, ([tab]) => {
if (chrome.runtime.lastError)
console.error(chrome.runtime.lastError);
// `tab` will either be a `tabs.Tab` instance or `undefined`.
callback(tab);
});
}
지정된 탭 음소거
이 예는 확장 프로그램이 특정 탭의 음소거 상태를 전환하는 방법을 보여줍니다.
async function toggleMuteState(tabId) {
const tab = await chrome.tabs.get(tabId);
const muted = !tab.mutedInfo.muted;
await chrome.tabs.update(tabId, {muted});
console.log(`Tab ${tab.id} is ${muted ? "muted" : "unmuted"}`);
}
function toggleMuteState(tabId) {
chrome.tabs.get(tabId, async (tab) => {
let muted = !tab.mutedInfo.muted;
await chrome.tabs.update(tabId, { muted });
console.log(`Tab ${tab.id} is ${ muted ? "muted" : "unmuted" }`);
});
}
클릭 시 현재 탭을 첫 번째 위치로 이동
이 예에서는 드래그가 진행 중일 수도 있고 진행되지 않을 수도 있는 동안 탭을 이동하는 방법을 보여줍니다. 이 예는
chrome.tabs.move
를 사용하는 경우 탭을 수정하는 다른 호출에 동일한 대기 패턴을 사용할 수 있습니다.
드래그가 진행 중일 수도 있습니다.
chrome.tabs.onActivated.addListener(moveToFirstPosition);
async function moveToFirstPosition(activeInfo) {
try {
await chrome.tabs.move(activeInfo.tabId, {index: 0});
console.log("Success.");
} catch (error) {
if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
setTimeout(() => moveToFirstPosition(activeInfo), 50);
} else {
console.error(error);
}
}
}
chrome.tabs.onActivated.addListener(moveToFirstPositionMV2);
function moveToFirstPositionMV2(activeInfo) {
chrome.tabs.move(activeInfo.tabId, { index: 0 }, () => {
if (chrome.runtime.lastError) {
const error = chrome.runtime.lastError;
if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
setTimeout(() => moveToFirstPositionMV2(activeInfo), 50);
} else {
console.error(error);
}
} else {
console.log("Success.");
}
});
}
선택한 탭의 콘텐츠 스크립트에 메시지 전달
이 예에서는 확장 프로그램의 서비스 워커가 tabs.sendMessage()
를 사용하여 특정 브라우저 탭에서 콘텐츠 스크립트와 통신하는 방법을 보여줍니다.
function sendMessageToActiveTab(message) {
const [tab] = await chrome.tabs.query({ active: true, lastFocusedWindow: true });
const response = await chrome.tabs.sendMessage(tab.id, message);
// TODO: Do something with the response.
}
확장 프로그램의 예
더 많은 Tabs API 확장 프로그램 데모를 살펴보려면 다음 중 하나를 살펴보세요.
유형
MutedInfo
탭의 음소거 상태 및 마지막 상태가 변경된 이유
속성
-
extensionId
문자열(선택사항)
음소거 상태를 변경한 확장 프로그램의 ID입니다. 확장 프로그램이 음소거 상태가 마지막으로 변경된 이유가 아닌 경우 설정되지 않습니다.
-
음소거
부울
탭의 음소거 (사운드 재생 차단) 여부입니다. 탭을 재생하지 않았거나 현재 사운드가 재생 중이 아닌 경우에도 음소거될 수 있습니다. 'muted' 오디오 표시기가 나타납니다.
-
reason
MutedInfoReason 선택사항
탭이 음소거 또는 음소거 해제된 이유입니다. 탭의 음소거 상태가 변경된 적이 없으면 설정되지 않습니다.
MutedInfoReason
음소거 상태 변경을 야기한 이벤트입니다.
열거형
"user"
사용자 입력 작업은 음소거 상태를 설정합니다.
"capture"
탭 캡처가 시작되어 음소거된 상태 변경이 강제 적용되었습니다.
"extension"
확장 프로그램 ID 필드로 식별되는 확장 프로그램은 음소거 상태를 설정합니다.
Tab
속성
-
운영중
부울
탭이 창에서 활성 상태인지 여부입니다. 반드시 창에 포커스가 있는 것은 아닙니다.
-
오더블
불리언 선택사항
Chrome 45 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.지난 몇 초 동안 탭에서 소리가 나는지 여부입니다 (음소거해도 들리지 않을 수 있음). '스피커 오디오' 표시됩니다.
-
autoDiscardable
부울
Chrome 54 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.리소스가 부족할 때 브라우저에서 탭을 자동으로 삭제할 수 있는지 여부입니다.
-
삭제됨
부울
Chrome 54 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭의 삭제 여부입니다. 삭제된 탭은 콘텐츠가 메모리에서 로드 취소되었지만 탭 표시줄에 계속 표시되는 탭입니다. 다음번에 활성화되면 콘텐츠가 다시 로드됩니다.
-
favIconUrl
문자열(선택사항)
탭 파비콘의 URL입니다. 이 속성은 확장 프로그램의 매니페스트에
"tabs"
권한이 포함된 경우에만 존재합니다. 탭이 로드 중인 경우 빈 문자열일 수도 있습니다. -
groupId
숫자
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭이 속한 그룹의 ID입니다.
-
높이
숫자 선택사항
탭의 높이(픽셀)입니다.
-
눈에 띄는 채팅 메시지
부울
탭의 강조 표시 여부입니다.
-
id
숫자 선택사항
탭의 ID입니다. 탭 ID는 브라우저 세션 내에서 고유합니다. 경우에 따라 탭에 ID가 할당되지 않을 수 있습니다. 예를 들어
sessions
API를 사용하여 외부 탭을 쿼리할 때 세션 ID가 있을 수 있습니다. 앱 및 devtools 창의 탭 ID도chrome.tabs.TAB_ID_NONE
로 설정할 수 있습니다. -
시크릿 모드
부울
탭이 시크릿 창에 있는지 여부
-
색인
숫자
창 내 탭의 0부터 시작하는 색인입니다.
-
lastAccessed
숫자
Chrome 121 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭에 마지막으로 액세스한 시간을 에포크 이후 밀리초 단위로 나타낸 값입니다.
-
mutedInfo
MutedInfo 선택사항
Chrome 46 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭의 음소거 상태 및 마지막 상태가 변경된 이유
-
openerTabId
숫자 선택사항
이 탭을 연 탭의 ID입니다(있는 경우). 이 속성은 오프너 탭이 여전히 존재하는 경우에만 존재합니다.
-
pendingUrl
문자열(선택사항)
Chrome 79 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭이 커밋되기 전에 탭이 이동하는 URL입니다. 이 속성은 확장 프로그램의 매니페스트에
"tabs"
권한이 포함되어 있고 대기 중인 탐색이 있는 경우에만 존재합니다. -
고정됨
부울
탭 고정 여부입니다.
-
선택됨
부울
<ph type="x-smartling-placeholder"></ph> 지원 중단됨tabs.Tab.highlighted
을(를) 사용하세요.탭 선택 여부입니다.
-
sessionId
문자열(선택사항)
sessions
API에서 가져온 탭을 고유하게 식별하는 데 사용되는 세션 ID입니다. -
상태
TabStatus 선택사항
탭의 로드 상태입니다.
-
제목
문자열(선택사항)
탭의 제목입니다. 이 속성은 확장 프로그램의 매니페스트에
"tabs"
권한이 포함된 경우에만 존재합니다. -
URL
문자열(선택사항)
탭 메인 프레임의 마지막으로 커밋된 URL입니다. 이 속성은 확장 프로그램의 매니페스트에
"tabs"
권한이 포함된 경우에만 표시되며 탭이 아직 커밋되지 않은 경우 빈 문자열일 수 있습니다.Tab.pendingUrl
도 참고하세요. -
너비
숫자 선택사항
탭의 너비(픽셀)입니다.
-
windowId
숫자
탭이 포함된 창의 ID입니다.
TabStatus
탭의 로드 상태입니다.
열거형
"unloaded"
"로드 중"
"완료"
WindowType
창 유형입니다.
열거형
"normal"
"popup"
"패널"
"앱"
"devtools"
ZoomSettings
탭의 확대/축소 변경이 처리되는 방식과 범위를 정의합니다.
속성
-
defaultZoomFactor
숫자 선택사항
Chrome 43 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.tab.getZoomSettings 호출 시 현재 탭의 기본 확대/축소 수준을 반환하는 데 사용됩니다.
-
모드
ZoomSettingsMode optional
확대/축소 변경이 처리되는 방식, 즉 페이지의 실제 배율을 담당하는 항목을 정의합니다. 기본값은
automatic
입니다. -
범위
ZoomSettingsScope 선택사항
확대/축소 변경사항이 페이지 원점에 대해 유지되는지 또는 이 탭에서만 적용할지 정의합니다. 기본값은
automatic
모드일 때는per-origin
이고 그렇지 않으면per-tab
입니다.
ZoomSettingsMode
확대/축소 변경이 처리되는 방식, 즉 페이지의 실제 배율을 담당하는 항목을 정의합니다. 기본값은 automatic
입니다.
열거형
"자동"
확대/축소 변경은 브라우저에서 자동으로 처리됩니다.
"manual"
확대/축소 변경의 자동 처리를 재정의합니다. onZoomChange
이벤트는 계속 전달되며 이 이벤트를 수신 대기하고 수동으로 페이지의 크기를 조정하는 것은 확장 프로그램의 책임입니다. 이 모드는 per-origin
확대/축소를 지원하지 않으므로 scope
확대/축소 설정을 무시하고 per-tab
로 가정합니다.
"Disabled"
탭의 모든 확대/축소를 사용 중지합니다. 탭이 기본 확대/축소 수준으로 되돌아가고 확대/축소 변경을 시도할 경우 모두 무시됩니다.
ZoomSettingsScope
확대/축소 변경사항이 페이지 원점에 대해 유지되는지 또는 이 탭에서만 적용할지 정의합니다. 기본값은 automatic
모드일 때는 per-origin
이고 그렇지 않으면 per-tab
입니다.
열거형
"per-origin"
확대/축소 변경사항은 확대/축소된 페이지의 원점에서 유지됩니다. 즉, 동일한 출처로 이동하는 다른 모든 탭도 확대/축소됩니다. 또한 per-origin
확대/축소 변경사항은 원점과 함께 저장됩니다. 즉, 동일한 출처의 다른 페이지로 이동할 때 모두 동일한 확대/축소 배율로 확대됩니다. per-origin
범위는 automatic
모드에서만 사용할 수 있습니다.
'탭별'
확대/축소 변경사항은 이 탭에만 적용되며 다른 탭의 확대/축소 변경사항은 이 탭의 확대/축소에 영향을 주지 않습니다. 또한 탐색 시 확대/축소 per-tab
변경사항이 재설정됩니다. 탭을 탐색하면 항상 per-origin
확대/축소 배율로 페이지가 로드됩니다.
속성
MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND
captureVisibleTab
를 초당 호출할 수 있는 최대 횟수입니다. captureVisibleTab
는 비용이 많이 들고 너무 자주 호출해서는 안 됩니다.
값
2
TAB_ID_NONE
브라우저 탭이 없음을 나타내는 ID입니다.
값
-1
TAB_INDEX_NONE
tab_strip에 탭 색인이 없음을 나타내는 색인
값
-1
메서드
captureVisibleTab()
chrome.tabs.captureVisibleTab(
windowId?: number,
options?: ImageDetails,
callback?: function,
)
지정된 창에서 현재 활성화된 탭의 표시 영역을 캡처합니다. 이 메서드를 호출하려면 확장 프로그램에 <all_urls> 권한 또는 activeTab 권한이 있어야 합니다. 이 방법을 사용하면 확장 프로그램이 일반적으로 액세스할 수 있는 사이트 외에도 chrome:-scheme 페이지, 기타 확장 프로그램 URL, 페이지, 데이터가 포함됩니다. 이러한 민감한 사이트는 ActiveTab 권한으로만 캡처할 수 있습니다. 확장 프로그램에 파일 액세스 권한이 부여된 경우에만 파일 URL을 캡처할 수 있습니다.
매개변수
-
windowId
숫자 선택사항
타겟 창 기본값은 현재 창입니다.
-
옵션
ImageDetails 선택사항
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(dataUrl: string) => void
-
dataUrl
문자열
캡처된 탭의 표시 영역의 이미지를 인코딩하는 데이터 URL입니다. 'src'에 할당할 수 있습니다. 표시할 HTML
img
요소의 속성입니다.
-
반환 값
-
프로미스<string>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
connect()
chrome.tabs.connect(
tabId: number,
connectInfo?: object,
)
지정된 탭의 콘텐츠 스크립트에 연결합니다. runtime.onConnect
이벤트는 현재 확장 프로그램의 지정된 탭에서 실행되는 각 콘텐츠 스크립트에서 실행됩니다. 자세한 내용은 콘텐츠 스크립트 메시징을 참고하세요.
매개변수
-
tabId
숫자
-
connectInfo
객체(선택사항)
반환 값
-
지정된 탭에서 실행 중인 콘텐츠 스크립트와 통신하는 데 사용할 수 있는 포트입니다. 탭이 닫히거나 존재하지 않으면 포트의
runtime.Port
이벤트가 실행됩니다.
create()
chrome.tabs.create(
createProperties: object,
callback?: function,
)
새 탭을 만듭니다.
매개변수
-
createProperties
객체
-
운영중
불리언 선택사항
창에서 탭을 활성 탭으로 변경할지 여부입니다. 창에 포커스가 있는지에는 영향을 미치지 않습니다 (
windows.update
참고). 기본값은true
입니다. -
색인
숫자 선택사항
창에서 탭이 차지해야 하는 위치입니다. 제공된 값은 0과 창의 탭 수 사이로 고정됩니다.
-
openerTabId
숫자 선택사항
이 탭을 연 탭의 ID입니다. 지정된 경우 오프너 탭이 새로 생성된 탭과 같은 창에 있어야 합니다.
-
고정됨
불리언 선택사항
탭을 고정할지 여부입니다. 기본값은
false
입니다. -
선택됨
불리언 선택사항
<ph type="x-smartling-placeholder"></ph> 지원 중단됨활성을 사용하세요.
창에서 탭을 선택한 탭으로 할지 여부입니다. 기본값은
true
입니다. -
URL
문자열(선택사항)
탭을 처음 탐색할 URL입니다. 정규화된 URL은 스키마 (예: 'www.google.com'이 아닌 'http://www.google.com'). 상대 URL은 확장 프로그램 내의 현재 페이지를 기준으로 합니다. 기본값은 새 탭 페이지입니다.
-
windowId
숫자 선택사항
새 탭을 만들 창입니다. 기본값은 현재 창입니다.
-
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(tab: Tab) => void
-
탭
생성된 탭
-
반환 값
-
약속 <Tab>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
detectLanguage()
chrome.tabs.detectLanguage(
tabId?: number,
callback?: function,
)
탭에 있는 콘텐츠의 기본 언어를 감지합니다.
매개변수
-
tabId
숫자 선택사항
기본값은 현재 창의 활성 탭입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(language: string) => void
-
language
문자열
en
또는fr
와 같은 ISO 언어 코드입니다. 이 메서드에서 지원하는 전체 언어 목록은 kLanguageInfoTable을 참조하세요. 두 번째에서 네 번째 열을 확인하면 NULL이 아닌 첫 번째 값이 반환됩니다. 단, 중국어 간체의 경우zh-CN
가 반환됩니다. 알 수 없거나 정의되지 않은 언어의 경우und
이 반환됩니다.
-
반환 값
-
프로미스<string>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
discard()
chrome.tabs.discard(
tabId?: number,
callback?: function,
)
메모리에서 탭을 삭제합니다. 삭제된 탭은 탭 표시줄에 계속 표시되며 활성화되면 새로고침됩니다.
매개변수
반환 값
-
프라미스 <Tab | 정의되지 않음>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
duplicate()
chrome.tabs.duplicate(
tabId: number,
callback?: function,
)
탭을 복사합니다.
매개변수
-
tabId
숫자
복제할 탭의 ID입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(tab?: Tab) => void
반환 값
-
프라미스 <Tab | 정의되지 않음>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
executeScript()
chrome.tabs.executeScript(
tabId?: number,
details: InjectDetails,
callback?: function,
)
Manifest V3에서 scripting.executeScript
로 대체되었습니다.
JavaScript 코드를 페이지에 삽입합니다. 자세한 내용은 콘텐츠 스크립트 문서의 프로그래매틱 삽입 섹션을 참고하세요.
매개변수
-
tabId
숫자 선택사항
스크립트를 실행할 탭의 ID입니다. 기본적으로 현재 창의 활성 탭으로 설정됩니다.
-
세부정보
실행할 스크립트의 세부정보입니다. 코드 또는 파일 속성 중 하나를 설정해야 하지만 두 가지를 동시에 설정할 수는 없습니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(result?: any[]) => void
-
결과
any[] 선택사항
삽입된 모든 프레임에서의 스크립트 결과
-
반환 값
-
Promise<any[] | 정의되지 않음>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
get()
chrome.tabs.get(
tabId: number,
callback?: function,
)
지정된 탭에 대한 세부정보를 검색합니다.
반환 값
-
약속 <Tab>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
getAllInWindow()
chrome.tabs.getAllInWindow(
windowId?: number,
callback?: function,
)
tabs.query
{windowId: windowId}
을(를) 사용하세요.
지정된 창의 모든 탭에 관한 세부정보를 가져옵니다.
반환 값
-
약속<Tab[]>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
getCurrent()
chrome.tabs.getCurrent(
callback?: function,
)
이 스크립트 호출이 이루어진 탭을 가져옵니다. 탭이 아닌 컨텍스트 (예: 백그라운드 페이지 또는 팝업 뷰)에서 호출되면 undefined
를 반환합니다.
반환 값
-
프라미스 <Tab | 정의되지 않음>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
getSelected()
chrome.tabs.getSelected(
windowId?: number,
callback?: function,
)
tabs.query
{active: true}
을(를) 사용하세요.
지정된 창에서 선택된 탭을 가져옵니다.
반환 값
-
약속 <Tab>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
getZoom()
chrome.tabs.getZoom(
tabId?: number,
callback?: function,
)
지정된 탭의 현재 확대/축소 배율을 가져옵니다.
매개변수
-
tabId
숫자 선택사항
현재 확대/축소 배율을 가져올 탭의 ID입니다. 기본적으로 현재 창의 활성 탭으로 설정됩니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(zoomFactor: number) => void
-
zoomFactor
숫자
탭의 현재 확대/축소 배율입니다.
-
반환 값
-
Promise<number>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
getZoomSettings()
chrome.tabs.getZoomSettings(
tabId?: number,
callback?: function,
)
지정된 탭의 현재 확대/축소 설정을 가져옵니다.
매개변수
-
tabId
숫자 선택사항
현재 확대/축소 설정을 가져올 탭의 ID입니다. 기본적으로 현재 창의 활성 탭으로 설정됩니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(zoomSettings: ZoomSettings) => void
-
zoomSettings
탭의 현재 확대/축소 설정입니다.
-
반환 값
-
Promise<ZoomSettings>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
goBack()
chrome.tabs.goBack(
tabId?: number,
callback?: function,
)
이전 페이지가 있는 경우 이전 페이지로 돌아갑니다.
매개변수
-
tabId
숫자 선택사항
뒤로 이동할 탭의 ID입니다. 기본적으로 현재 창의 선택된 탭으로 설정됩니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
프로미스<void>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
goForward()
chrome.tabs.goForward(
tabId?: number,
callback?: function,
)
사용 가능한 경우 다음 페이지로 이동합니다.
매개변수
-
tabId
숫자 선택사항
앞으로 이동할 탭의 ID입니다. 기본적으로 현재 창의 선택된 탭으로 설정됩니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
프로미스<void>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
group()
chrome.tabs.group(
options: object,
callback?: function,
)
지정된 그룹에 하나 이상의 탭을 추가합니다. 그룹이 지정되지 않은 경우 새로 만든 그룹에 해당 탭을 추가합니다.
매개변수
-
옵션
객체
-
createProperties
객체(선택사항)
그룹을 만들기 위한 구성입니다. groupId가 이미 지정된 경우에는 사용할 수 없습니다.
-
windowId
숫자 선택사항
새 그룹의 창입니다. 기본값은 현재 창입니다.
-
-
groupId
숫자 선택사항
탭을 추가할 그룹의 ID입니다. 지정하지 않으면 새 그룹이 생성됩니다.
-
tabIds
숫자 | [숫자, ...숫자[]]
지정된 그룹에 추가할 탭 ID 또는 탭 ID 목록입니다.
-
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(groupId: number) => void
-
groupId
숫자
탭이 추가된 그룹의 ID입니다.
-
반환 값
-
Promise<number>
프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
highlight()
chrome.tabs.highlight(
highlightInfo: object,
callback?: function,
)
지정된 탭을 강조 표시하고 그룹의 첫 번째 탭에 포커스를 둡니다. 지정된 탭이 현재 활성 상태인 경우 아무 작업도 하지 않는 것으로 표시됩니다.
매개변수
-
highlightInfo
객체
-
탭
숫자 | 숫자[]
강조 표시할 하나 이상의 탭 색인입니다.
-
windowId
숫자 선택사항
탭이 포함된 창입니다.
-
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(window: Window) => void
-
창
탭이 강조 표시된 창의 세부정보를 포함합니다.
-
반환 값
-
Promise<windows.Window>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
insertCSS()
chrome.tabs.insertCSS(
tabId?: number,
details: InjectDetails,
callback?: function,
)
Manifest V3에서 scripting.insertCSS
로 대체되었습니다.
CSS를 페이지에 삽입합니다. 이 메서드로 삽입된 스타일은 scripting.removeCSS
를 사용하여 삭제할 수 있습니다. 자세한 내용은 콘텐츠 스크립트 문서의 프로그래매틱 삽입 섹션을 참고하세요.
매개변수
-
tabId
숫자 선택사항
CSS를 삽입할 탭의 ID입니다. 기본적으로 현재 창의 활성 탭으로 설정됩니다.
-
세부정보
삽입할 CSS 텍스트의 세부정보입니다. 코드 또는 파일 속성 중 하나를 설정해야 하지만 두 가지를 동시에 설정할 수는 없습니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
프로미스<void>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
move()
chrome.tabs.move(
tabIds: number | number[],
moveProperties: object,
callback?: function,
)
하나 이상의 탭을 창 내의 새 위치 또는 새 창으로 이동합니다. 탭은 일반 (window.type === "normal") 창과 일반 창에서만 이동할 수 있습니다.
매개변수
반환 값
-
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.
프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
query()
chrome.tabs.query(
queryInfo: object,
callback?: function,
)
지정된 속성이 있는 모든 탭을 가져오거나 속성이 지정되지 않은 경우 모든 탭을 가져옵니다.
매개변수
-
queryInfo
객체
-
운영중
불리언 선택사항
창에서 탭이 활성 상태인지 여부
-
오더블
불리언 선택사항
Chrome 45 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭의 소리가 들리는지 여부입니다.
-
autoDiscardable
불리언 선택사항
Chrome 54 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.리소스가 부족할 때 브라우저에서 탭을 자동으로 삭제할 수 있는지 여부입니다.
-
currentWindow
불리언 선택사항
탭이 현재 창에 있는지 여부입니다.
-
삭제됨
불리언 선택사항
Chrome 54 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭의 삭제 여부입니다. 삭제된 탭은 콘텐츠가 메모리에서 로드 취소되었지만 탭 표시줄에 계속 표시되는 탭입니다. 다음번에 활성화되면 콘텐츠가 다시 로드됩니다.
-
groupId
숫자 선택사항
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭이 속한 그룹의 ID입니다. 그룹화되지 않은 탭의 경우
tabGroups.TAB_GROUP_ID_NONE
입니다. -
눈에 띄는 채팅 메시지
불리언 선택사항
탭 강조표시 여부입니다.
-
색인
숫자 선택사항
창 내 탭의 위치입니다.
-
lastFocusedWindow
불리언 선택사항
마지막으로 포커스가 맞춰진 창에 탭이 있는지 여부입니다.
-
음소거
불리언 선택사항
Chrome 45 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭을 음소거할지 여부입니다.
-
고정됨
불리언 선택사항
탭 고정 여부입니다.
-
상태
TabStatus 선택사항
탭 로드 상태
-
제목
문자열(선택사항)
페이지 제목을 패턴과 일치시킵니다. 확장 프로그램에
"tabs"
권한이 없으면 이 속성은 무시됩니다. -
URL
string | string[] 선택사항
하나 이상의 URL 패턴을 기준으로 탭을 일치시킵니다. 프래그먼트 식별자가 일치하지 않습니다. 확장 프로그램에
"tabs"
권한이 없으면 이 속성은 무시됩니다. -
windowId
숫자 선택사항
상위 창의 ID 또는 현재 창의 경우
windows.WINDOW_ID_CURRENT
입니다. -
windowType
WindowType (선택사항)
탭이 있는 창의 유형입니다.
-
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(result: Tab[]) => void
-
결과
탭[]
-
반환 값
-
약속<Tab[]>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
reload()
chrome.tabs.reload(
tabId?: number,
reloadProperties?: object,
callback?: function,
)
탭을 새로고침합니다.
매개변수
-
tabId
숫자 선택사항
새로고침할 탭의 ID입니다. 기본적으로 현재 창의 선택된 탭으로 설정됩니다.
-
reloadProperties
객체(선택사항)
-
bypassCache
불리언 선택사항
로컬 캐싱을 우회할지 여부입니다. 기본값은
false
입니다.
-
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
프로미스<void>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
remove()
chrome.tabs.remove(
tabIds: number | number[],
callback?: function,
)
하나 이상의 탭을 닫습니다.
매개변수
-
tabIds
숫자 | 숫자[]
닫을 탭 ID 또는 탭 ID 목록입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
프로미스<void>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
removeCSS()
chrome.tabs.removeCSS(
tabId?: number,
details: DeleteInjectionDetails,
callback?: function,
)
Manifest V3에서 scripting.removeCSS
로 대체되었습니다.
이전에 scripting.insertCSS
호출로 삽입된 페이지 CSS에서 삭제합니다.
매개변수
-
tabId
숫자 선택사항
CSS를 삭제할 탭의 ID입니다. 기본적으로 현재 창의 활성 탭으로 설정됩니다.
-
삭제할 CSS 텍스트의 세부정보입니다. 코드 또는 파일 속성 중 하나를 설정해야 하지만 두 가지를 동시에 설정할 수는 없습니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
프로미스<void>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
sendMessage()
chrome.tabs.sendMessage(
tabId: number,
message: any,
options?: object,
callback?: function,
)
지정된 탭의 콘텐츠 스크립트에 단일 메시지를 전송하고 응답이 다시 전송될 때 실행할 콜백(선택사항)을 포함합니다. runtime.onMessage
이벤트는 현재 확장 프로그램의 지정된 탭에서 실행되는 각 콘텐츠 스크립트에서 실행됩니다.
매개변수
-
tabId
숫자
-
메시지
모두
전송할 메시지입니다. 이 메시지는 JSON-ifiable 객체여야 합니다.
-
옵션
객체(선택사항)
-
콜백
함수 선택사항
Chrome 99 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.callback
매개변수는 다음과 같습니다.(response: any) => void
-
응답
모두
메시지의 핸들러에서 보낸 JSON 응답 객체입니다. 지정된 탭에 연결하는 동안 오류가 발생하면 콜백이 인수 없이 호출되고
runtime.lastError
가 오류 메시지로 설정됩니다.
-
반환 값
-
약속<any>
Chrome 99 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
sendRequest()
chrome.tabs.sendRequest(
tabId: number,
request: any,
callback?: function,
)
runtime.sendMessage
을(를) 사용하세요.
지정된 탭의 콘텐츠 스크립트에 단일 요청을 전송하며, 응답이 다시 전송될 때 실행할 선택적 콜백도 함께 전송합니다. extension.onRequest
이벤트는 현재 확장 프로그램의 지정된 탭에서 실행되는 각 콘텐츠 스크립트에서 실행됩니다.
매개변수
-
tabId
숫자
-
요청
모두
-
콜백
함수 선택사항
Chrome 99 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.callback
매개변수는 다음과 같습니다.(response: any) => void
-
응답
모두
요청 핸들러에서 전송한 JSON 응답 객체입니다. 지정된 탭에 연결하는 동안 오류가 발생하면 콜백이 인수 없이 호출되고
runtime.lastError
가 오류 메시지로 설정됩니다.
-
반환 값
-
약속<any>
Chrome 99 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
setZoom()
chrome.tabs.setZoom(
tabId?: number,
zoomFactor: number,
callback?: function,
)
지정된 탭을 확대/축소합니다.
매개변수
-
tabId
숫자 선택사항
확대/축소할 탭의 ID입니다. 기본적으로 현재 창의 활성 탭으로 설정됩니다.
-
zoomFactor
숫자
새로운 확대/축소 배율입니다. 값이
0
이면 탭이 현재 기본 확대/축소 배율로 설정됩니다.0
보다 큰 값은 탭의 확대/축소 배율 (기본값이 아닐 수 있음)을 지정합니다. -
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
프로미스<void>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
setZoomSettings()
chrome.tabs.setZoomSettings(
tabId?: number,
zoomSettings: ZoomSettings,
callback?: function,
)
확대/축소 변경이 처리되는 방식을 정의하는 지정된 탭의 확대/축소 설정을 설정합니다. 탭을 탐색하면 이 설정이 기본값으로 재설정됩니다.
매개변수
-
tabId
숫자 선택사항
확대/축소 설정을 변경할 탭의 ID입니다. 기본적으로 현재 창의 활성 탭으로 설정됩니다.
-
zoomSettings
확대/축소 변경이 처리되는 방식과 범위를 정의합니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
프로미스<void>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
ungroup()
chrome.tabs.ungroup(
tabIds: number | [number, ...number[]],
callback?: function,
)
각 그룹에서 하나 이상의 탭을 삭제합니다. 그룹이 비어 있는 경우 삭제됩니다.
매개변수
-
tabIds
숫자 | [숫자, ...숫자[]]
각 그룹에서 삭제할 탭 ID 또는 탭 ID의 목록입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
프로미스<void>
프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
update()
chrome.tabs.update(
tabId?: number,
updateProperties: object,
callback?: function,
)
탭의 속성을 수정합니다. updateProperties
에 지정되지 않은 속성은 수정되지 않습니다.
매개변수
-
tabId
숫자 선택사항
기본값은 현재 창에서 선택된 탭입니다.
-
updateProperties
객체
-
운영중
불리언 선택사항
탭의 활성화 여부입니다. 창에 포커스가 있는지에는 영향을 미치지 않습니다 (
windows.update
참고). -
autoDiscardable
불리언 선택사항
Chrome 54 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.리소스가 부족할 때 브라우저에서 탭을 자동으로 삭제해야 하는지 여부입니다.
-
눈에 띄는 채팅 메시지
불리언 선택사항
현재 선택 항목에서 탭을 추가하거나 삭제합니다.
-
음소거
불리언 선택사항
Chrome 45 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭을 음소거해야 하는지 여부입니다.
-
openerTabId
숫자 선택사항
이 탭을 연 탭의 ID입니다. 지정하면 오프너 탭이 이 탭과 같은 창에 있어야 합니다.
-
고정됨
불리언 선택사항
탭을 고정할지 여부입니다.
-
선택됨
불리언 선택사항
<ph type="x-smartling-placeholder"></ph> 지원 중단됨강조표시됨을 사용하세요.
탭 선택 여부입니다.
-
URL
문자열(선택사항)
탭으로 이동할 URL입니다. JavaScript URL은 지원되지 않습니다. 대신
scripting.executeScript
를 사용하세요.
-
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(tab?: Tab) => void
반환 값
-
프라미스 <Tab | 정의되지 않음>
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.프로미스는 Manifest V3 이상에서 지원되지만 이전 버전과의 호환성입니다. 같은 함수 호출에서 두 가지를 모두 사용할 수는 없습니다. 이 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
이벤트
onActivated
chrome.tabs.onActivated.addListener(
callback: function,
)
창의 활성 탭이 변경되면 실행됩니다. 이 이벤트가 발생한 시점에 탭의 URL이 설정되지 않을 수도 있지만, onUpdated 이벤트를 수신하여 URL이 설정될 때 알림을 받을 수 있습니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(activeInfo: object) => void
-
activeInfo
객체
-
tabId
숫자
활성화된 탭의 ID입니다.
-
windowId
숫자
활성 탭이 내부에서 변경된 창의 ID입니다.
-
-
onActiveChanged
chrome.tabs.onActiveChanged.addListener(
callback: function,
)
tabs.onActivated
을(를) 사용하세요.
창에서 선택된 탭이 변경되면 실행됩니다. 이 이벤트가 발생한 시점에 탭의 URL이 설정되지 않았을 수 있지만, tabs.onUpdated
이벤트를 수신 대기하여 URL이 설정되었을 때 알림을 받을 수 있습니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(tabId: number, selectInfo: object) => void
-
tabId
숫자
-
selectInfo
객체
-
windowId
숫자
선택한 탭이 내부에서 변경된 창의 ID입니다.
-
-
onAttached
chrome.tabs.onAttached.addListener(
callback: function,
)
탭이 창에 연결될 때 실행됩니다. 창 간에 이동했을 수 있습니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(tabId: number, attachInfo: object) => void
-
tabId
숫자
-
attachInfo
객체
-
newPosition
숫자
-
newWindowId
숫자
-
-
onCreated
chrome.tabs.onCreated.addListener(
callback: function,
)
탭이 생성될 때 실행됩니다. 이 이벤트가 실행될 때 탭의 URL과 탭 그룹 멤버십이 설정되지 않을 수도 있지만, onUpdated 이벤트를 수신하여 URL이 설정되거나 탭이 탭 그룹에 추가될 때 알림을 받을 수 있습니다.
onDetached
chrome.tabs.onDetached.addListener(
callback: function,
)
탭이 창에서 분리되면 실행됩니다. 창 간에 이동했을 수 있습니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(tabId: number, detachInfo: object) => void
-
tabId
숫자
-
detachInfo
객체
-
oldPosition
숫자
-
oldWindowId
숫자
-
-
onHighlightChanged
chrome.tabs.onHighlightChanged.addListener(
callback: function,
)
tabs.onHighlighted
을(를) 사용하세요.
창에서 강조 표시되거나 선택된 탭이 변경되면 실행됩니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(selectInfo: object) => void
-
selectInfo
객체
-
tabIds
숫자[]
창에 강조 표시된 모든 탭
-
windowId
숫자
탭이 변경된 창입니다.
-
-
onHighlighted
chrome.tabs.onHighlighted.addListener(
callback: function,
)
창에서 강조 표시되거나 선택된 탭이 변경되면 실행됩니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(highlightInfo: object) => void
-
highlightInfo
객체
-
tabIds
숫자[]
창에 강조 표시된 모든 탭
-
windowId
숫자
탭이 변경된 창입니다.
-
-
onMoved
chrome.tabs.onMoved.addListener(
callback: function,
)
창 내에서 탭이 이동하면 실행됩니다. 이동 이벤트는 하나만 발생하며 사용자가 직접 이동한 탭을 나타냅니다. 수동으로 이동한 탭에 응답하여 이동해야 하는 다른 탭에 대해서는 이동 이벤트가 실행되지 않습니다. 이 이벤트는 탭이 창 간에 이동해도 시작되지 않습니다. 자세한 내용은 tabs.onDetached
를 참고하세요.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(tabId: number, moveInfo: object) => void
-
tabId
숫자
-
moveInfo
객체
-
fromIndex
숫자
-
toIndex
숫자
-
windowId
숫자
-
-
onRemoved
chrome.tabs.onRemoved.addListener(
callback: function,
)
탭이 닫히면 실행됩니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(tabId: number, removeInfo: object) => void
-
tabId
숫자
-
removeInfo
객체
-
isWindowClosing
부울
상위 창이 닫혀 탭이 닫히면 true입니다.
-
windowId
숫자
탭이 닫힌 창입니다.
-
-
onReplaced
chrome.tabs.onReplaced.addListener(
callback: function,
)
사전 렌더링 또는 인스턴트로 인해 탭이 다른 탭으로 대체되면 실행됩니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(addedTabId: number, removedTabId: number) => void
-
addedTabId
숫자
-
removedTabId
숫자
-
onSelectionChanged
chrome.tabs.onSelectionChanged.addListener(
callback: function,
)
tabs.onActivated
을(를) 사용하세요.
창에서 선택된 탭이 변경되면 실행됩니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(tabId: number, selectInfo: object) => void
-
tabId
숫자
-
selectInfo
객체
-
windowId
숫자
선택한 탭이 내부에서 변경된 창의 ID입니다.
-
-
onUpdated
chrome.tabs.onUpdated.addListener(
callback: function,
)
탭이 업데이트되면 실행됩니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(tabId: number, changeInfo: object, tab: Tab) => void
-
tabId
숫자
-
changeInfo
객체
-
오더블
불리언 선택사항
Chrome 45 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭의 새로운 청취 가능 상태입니다.
-
autoDiscardable
불리언 선택사항
Chrome 54 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭의 새로운 자동 삭제 가능 상태입니다.
-
삭제됨
불리언 선택사항
Chrome 54 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭의 새로운 삭제된 상태입니다.
-
favIconUrl
문자열(선택사항)
탭의 새로운 파비콘 URL입니다.
-
groupId
숫자 선택사항
Chrome 88 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭의 새 그룹
-
mutedInfo
MutedInfo 선택사항
Chrome 46 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭의 새로운 음소거 상태 및 변경 이유
-
고정됨
불리언 선택사항
탭의 새로운 고정 상태
-
상태
TabStatus 선택사항
탭의 로드 상태입니다.
-
제목
문자열(선택사항)
Chrome 48 이상 를 통해 개인정보처리방침을 정의할 수 있습니다.탭의 새 제목입니다.
-
URL
문자열(선택사항)
탭의 URL(변경된 경우)
-
-
탭
-
onZoomChange
chrome.tabs.onZoomChange.addListener(
callback: function,
)
탭을 확대/축소하면 실행됩니다.
매개변수
-
콜백
함수
callback
매개변수는 다음과 같습니다.(ZoomChangeInfo: object) => void
-
ZoomChangeInfo
객체
-
newZoomFactor
숫자
-
oldZoomFactor
숫자
-
tabId
숫자
-
zoomSettings
-
-