2013-04-12 18 views
6

Czy można w jakiś sposób posłuchać keyevents (keyup, keydown, keypress) w chrome omnibox?Dodaj zdarzenie keypress do omniboksu w rozszerzeniu chrome

Dotychczas Właśnie znalazłem:

chrome.omnibox.onInputStarted.addListener(function() {...}); 
chrome.omnibox.onInputChanged.addListener(function(string text, function suggest) {...}); 
chrome.omnibox.onInputEntered.addListener(function(string text) {...}); 
chrome.omnibox.onInputCancelled.addListener(function() {...}); 

Edit:

Problem ze zdarzeniem onInputChanged to, że nie ognia, gdy użytkownik korzysta z klawiszy strzałek, aby przejść do jedna z sugestii.

+1

Nie, to nie jest możliwe. "onInputChanged" powinno wystarczyć w większości przypadków. Czy możesz rozwinąć swoje pytanie, aby wyjaśnić, co próbujesz zrobić i wyjaśnić, dlaczego "onInputChanged" nie jest wystarczające dla twoich potrzeb? – apsillers

+0

Znalazłem, że teraz nazywa się "chrome.searchBox" ... ktoś inny odkrył, że to się zmieniło i która wersja? – marksyzm

Odpowiedz

3

Nie wyglądało u źródła, jednak nie jest to przykład tutaj: http://developer.chrome.com/extensions/samples.html#be68e4d262d74d2457999fc402f5bf5e

Właśnie spróbowałem (typ „Omnix s” w omniboksie) i może zgłosić niż przy użyciu klawiszy strzałek aby przejść do jednej z sugestii, że wyświetlany jest alert, informując mnie o wybranej opcji.

Uwaga: to działa tylko jeśli wybrana opcja wyświetla ikonę na przedłużenie obok niego

+0

tak, ale musisz go wybrać, naciskając '' 'return''' – HaNdTriX

+0

Och, tak, tak, rzeczywiście - naciśnij przycisk, aby potwierdzić wybór. Wydaje się, że nie ma powiadomienia, dopóki ta opcja nie zostanie wybrana - podobnie jak element html 'select' lub (jeśli dobrze pamiętam) kombi-win32. Sądzę, że racja bytu - wybór nie zmienił się, dopóki nie zostanie dokonany nowy wybór. "przeglądanie" selekcji jest wolne od zdarzeń. – enhzflep

Powiązane problemy