Omnibox-Schlüsselwörter integrieren
Integrieren Sie Ihre Erweiterung in die Omnibox des Browsers, damit Benutzer Aktionen oder Suchvorgänge direkt über die Adressleiste auslösen können.
Omnibox-Schlüsselwörter integrieren ist eine kostenlose Browser Extensions Development (Chrome & Edge)-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Browser Extensions Development (Chrome & Edge)-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Browser Extensions Development (Chrome & Edge)-Kurs umfasst insgesamt 4 Lektionen.
Teile dieser Lektion wurden noch nicht übersetzt und werden auf Englisch angezeigt.
What is the Omnibox?
The omnibox is the URL bar at the top of your browser. It's not just for typing website addresses; it also handles searches and can be a powerful entry point for browser extensions!
Integrating with the omnibox allows users to quickly interact with your extension directly from the address bar, without needing to click an icon or open a popup.
Power Up Your Address Bar
Why integrate your extension with the omnibox?
- Quick Access: Users can trigger extension actions with just a few keystrokes.
- Custom Searches: Create shortcuts for specific searches within your extension's data.
- Streamlined Workflow: Perform tasks without interrupting their browsing flow.
Setting Your Omnibox Keyword
To enable omnibox integration, you need to declare it in your extension's manifest.json file.
You'll specify a unique keyword. When a user types this keyword into the omnibox, followed by a space, your extension takes over the input.
Manifest Keyword Example
Here's how to declare an omnibox keyword, for example, 'myext':
{ "manifest_version": 3,
"name": "My Omnibox Extension",
"version": "1.0",
"omnibox": {
"keyword": "myext"
},
"background": {
"service_worker": "background.js"
}
}Capturing User Input
Once your keyword is set, your background service worker needs to listen for user input. The main event for this is chrome.omnibox.onInputChanged.
This event fires every time the user types a character after your keyword, allowing you to provide real-time suggestions.
Displaying Live Suggestions
The onInputChanged listener provides a suggest callback function. You use this to send an array of suggestion objects back to the omnibox.
Each suggestion object needs a content (what gets inserted if selected) and a description (what the user sees in the dropdown).
Dynamic Suggestions in Action
This background.js snippet shows how to listen for input and offer basic suggestions. Try typing 'myext hello' in your browser's omnibox after loading this extension.
// background.js
chrome.omnibox.onInputChanged.addListener(
function(text, suggest) {
let suggestions = [];
if (text.startsWith("hello")) {
suggestions.push({content: "hello world", description: "Says Hello World"});
suggestions.push({content: "hello there", description: "Greets you"});
} else {
suggestions.push({content: "type 'hello'", description: "Try typing 'hello'"});
}
suggest(suggestions);
}
);Acting on User Selection
After the user types their input and optionally selects a suggestion, they press Enter. This triggers the chrome.omnibox.onInputEntered event.
This is where your extension performs the final action based on the user's input, like opening a new tab or executing a script.
Executing Actions
Inside onInputEntered, the text parameter contains the final string the user entered or selected.
A common action is to open a new tab with a specific URL using chrome.tabs.create({url: '...' }), or perform a search based on the input.
Full Omnibox Integration
Here's a more complete example combining both input handling and action execution. This example allows users to search Google directly from the omnibox using 'myext go [query]'.
// background.js
chrome.omnibox.onInputChanged.addListener(
function(text, suggest) {
let suggestions = [];
if (text.startsWith("go ")) {
const query = text.substring(3);
suggestions.push({
content: `https://www.google.com/search?q=${query}`,
description: `Search Google for "${query}"`
});
} else {
suggestions.push({
content: "go [search_term]",
description: "Type 'go' to search Google"
});
}
suggest(suggestions);
}
);
chrome.omnibox.onInputEntered.addListener(
function(text, disposition) {
if (text.startsWith("http://") || text.startsWith("https://")) {
chrome.tabs.create({url: text});
} else if (text.startsWith("go ")) {
const query = text.substring(3);
chrome.tabs.create({url: `https://www.google.com/search?q=${query}`});
} else {
console.log("Omnibox entered:", text);
chrome.tabs.create({url: `https://www.google.com/search?q=${text}`});
}
}
);Omnibox Quick Check
You've learned how to integrate your extension with the browser's omnibox. Let's test your knowledge!
Omnibox Power-Up Recap
Great job! You've learned how to integrate your extension with the browser's omnibox.
- We defined a keyword in
manifest.json. - We used
chrome.omnibox.onInputChangedto provide dynamic suggestions as the user types. - We handled the final action using
chrome.omnibox.onInputEntered, for example, opening a new tab.
This powerful feature allows users to interact with your extension quickly and efficiently right from their address bar!
Häufig gestellte Fragen
Ist die Lektion „Omnibox-Schlüsselwörter integrieren“ kostenlos?
Ja — der vollständige Text von „Omnibox-Schlüsselwörter integrieren“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Browser Extensions Development (Chrome & Edge)-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Browser Extensions Development (Chrome & Edge)-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Omnibox-Schlüsselwörter integrieren“?
Integrieren Sie Ihre Erweiterung in die Omnibox des Browsers, damit Benutzer Aktionen oder Suchvorgänge direkt über die Adressleiste auslösen können. Du übst Browser Extensions Development (Chrome & Edge) mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Browser Extensions Development (Chrome & Edge) zu starten?
Keine Vorkenntnisse erforderlich. Browser Extensions Development (Chrome & Edge) auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „Omnibox-Schlüsselwörter integrieren“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Browser Extensions Development (Chrome & Edge)-Lektion Code schreiben und ausführen?
Ja. Jede Browser Extensions Development (Chrome & Edge)-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Kontextmenüeinträge hinzufügen
- Omnibox-Schlüsselwörter integrieren
- Auf Omnibox-Eingaben reagieren
- Tastenkürzel mit der Commands API