설명
검색주소창 API를 사용하면 검색주소창이라고도 하는 Chrome의 주소 표시줄에 키워드를 등록할 수 있습니다.
사용자가 확장 프로그램의 키워드를 입력하면 사용자는 확장 프로그램과만 상호작용하기 시작합니다. 각각의 키 입력이 확장 프로그램으로 전송되고 이에 대한 응답으로 제안을 제공할 수 있습니다.
추천은 다양한 방식으로 풍부한 형식을 지정할 수 있습니다. 사용자가 추천을 수락하면 확장 프로그램에 알림이 전송되고 작업을 실행할 수 있습니다.
매니페스트
검색주소창 API를 사용하려면 매니페스트에 "omnibox.keyword"
입력란을 포함해야 합니다. 또한 사용자에게 키워드 모드로 전환하도록 제안할 때 주소 표시줄에 표시되는 16x16픽셀 아이콘을 지정해야 합니다.
예를 들면 다음과 같습니다.
{
"name": "Aaron's omnibox extension",
"version": "1.0",
"omnibox": { "keyword" : "aaron" },
"icons": {
"16": "16-full-color.png"
},
"background": {
"persistent": false,
"scripts": ["background.js"]
}
}
예
이 API를 사용해 보려면 chrome-extension-samples 저장소의 검색주소창 API 예를 설치하세요.
유형
DefaultSuggestResult
제안 검색결과입니다.
속성
-
설명
string
URL 드롭다운에 표시되는 텍스트입니다. 스타일 지정을 위한 XML 스타일 마크업을 포함할 수 있습니다. 지원되는 태그는 'url' (리터럴 URL), 'match' (사용자의 쿼리와 일치하는 텍스트를 강조 표시하는 데 사용) 및 'dim' (도우미 텍스트의 경우 어둡게)입니다. 스타일은 중첩될 수 있습니다(예: 흐리게 표시 일치).
DescriptionStyleType
스타일 유형입니다.
열거형
OnInputEnteredDisposition
검색주소창 검색어의 창 처리입니다. 이는 결과를 표시하기 위한 권장되는 컨텍스트입니다. 예를 들어 검색주소창 명령어가 특정 URL로 이동하는 경우 'newForegroundTab'이 배치되면 새로 선택한 탭에서 탐색이 이뤄집니다.
열거형
"currentTab"
"newForegroundTab"
"newBackgroundTab"
SuggestResult
제안 검색결과입니다.
속성
-
콘텐츠의
string
URL 표시줄에 입력되고 사용자가 이 항목을 선택하면 확장 프로그램으로 전송되는 텍스트입니다.
-
삭제 가능
부울 선택사항
Chrome 63 이상사용자가 추천 결과를 삭제할 수 있는지 여부입니다.
-
설명
string
URL 드롭다운에 표시되는 텍스트입니다. 스타일 지정을 위한 XML 스타일 마크업을 포함할 수 있습니다. 지원되는 태그는 'url' (리터럴 URL), 'match' (사용자의 쿼리와 일치하는 텍스트를 강조 표시하는 데 사용) 및 'dim' (도우미 텍스트의 경우 어둡게)입니다. 스타일은 중첩될 수 있습니다(예: 흐리게 표시 일치). 사전 정의된 5개 항목을 텍스트로 표시하려면 이스케이프 처리해야 합니다(stackoverflow.com/a/1091953/89484).
방법
setDefaultSuggestion()
chrome.omnibox.setDefaultSuggestion(
suggestion: DefaultSuggestResult,
callback?: function,
)
기본 제안의 설명 및 스타일을 설정합니다. 기본 추천 검색어는 URL 입력란 아래의 첫 번째 추천 행에 표시되는 텍스트입니다.
매개변수
-
'content' 매개변수가 없는 부분적인 suggestResult 객체입니다.
-
콜백
함수 선택사항
Chrome 100 이상callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 100 이상프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.
이벤트
onDeleteSuggestion
chrome.omnibox.onDeleteSuggestion.addListener(
callback: function,
)
사용자가 추천 결과를 삭제했습니다.
매개변수
-
콜백
기능
callback
매개변수는 다음과 같습니다.(text: string) => void
-
text
string
-
onInputCancelled
chrome.omnibox.onInputCancelled.addListener(
callback: function,
)
사용자가 입력을 수락하지 않고 키워드 입력 세션을 종료했습니다.
매개변수
-
콜백
기능
callback
매개변수는 다음과 같습니다.() => void
onInputChanged
chrome.omnibox.onInputChanged.addListener(
callback: function,
)
사용자가 검색창에 입력한 내용을 변경했습니다.
매개변수
-
콜백
기능
callback
매개변수는 다음과 같습니다.(text: string, suggest: function) => void
-
text
string
-
suggest
기능
suggest
매개변수는 다음과 같습니다.(suggestResults: SuggestResult[]) => void
-
suggestResults
제안 결과 배열
-
-
onInputEntered
chrome.omnibox.onInputEntered.addListener(
callback: function,
)
사용자가 검색창에 입력된 내용을 수락했습니다.
매개변수
-
콜백
기능
callback
매개변수는 다음과 같습니다.(text: string, disposition: OnInputEnteredDisposition) => void
-
text
string
-
disposition
-
onInputStarted
chrome.omnibox.onInputStarted.addListener(
callback: function,
)
사용자가 광고 확장의 키워드를 입력하여 키워드 입력 세션을 시작했습니다. 입력 세션당 정확히 한 번, 모든 onInputChanged 이벤트 전에 전송됩니다.
매개변수
-
콜백
기능
callback
매개변수는 다음과 같습니다.() => void