1

Я пишу расширение Chrome стараюсь отличить поиск, сделанный Omnibox (адресная строка) и google.com.Как отличить поиск от Omnibox и Google в расширении Chrome?

Я замечаю, что если я сделаю поиск непосредственно из Google, URL-адрес выглядит как https://www.google.com/#q=example. Хотя, если я ищу от Omnibox, url выглядит как https://www.google.com/webhp?sourceid=chrome-instant&rlz=1&ion=1&espv=2&ie=UTF-8#q=example

Я могу отличить отличие от URL здесь. Но если я сделаю другой поиск на странице, открытой Ominbox, она все равно показывает https://www.google.com/webhp?sourceid=chrome-instant&rlz=1&ion=1&espv=2&ie=UTF-8#q=example

Тогда я не могу отличить разницу здесь.

Есть ли способ достичь этого?

+0

Существует, вероятно, много способов достичь этого, и из-за этого нам нужна идея о том, как работает ваш код. – Xan

ответ

0

Как указано в https://stackoverflow.com/a/17930656/1587329, вы можете использовать onReferenceFragmentUpdated. Единственный раз, когда он уволил меня, - это когда омнибокс наконец обновлен. (The onHistoryStatusUpdate событие не содержит окончательное поля #... рефа)


Старых решений: Поиска с помощью омнибокса не срабатывает в WebRequest.

Таким образом, вы можете создать WebRequestListener, скажем, в onBeforeRequest, и проверить позже, если был вызван такой прослушиватель.

Смежные вопросы