Javascript 如何知道谷歌什么时候搜索?
我正在开发一个chrome扩展,我需要知道谷歌搜索什么时候可以对每个搜索执行操作 我尝试用侦听请求,但缓存的请求未被捕获Javascript 如何知道谷歌什么时候搜索?,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我正在开发一个chrome扩展,我需要知道谷歌搜索什么时候可以对每个搜索执行操作 我尝试用侦听请求,但缓存的请求未被捕获 每次我在谷歌搜索时,Evernote extension都会在我的笔记中搜索,即使请求已缓存。他们是怎么做的,或者怎样做相似的事情?这里有一篇关于这个主题的帖子 诀窍是使用 document.addEventListener("DOMSubtreeModified", function(event){ 收听谷歌搜索页面上的每一个更改。如何将内容脚本注入到所有谷歌主页?听起来
每次我在谷歌搜索时,Evernote extension都会在我的笔记中搜索,即使请求已缓存。他们是怎么做的,或者怎样做相似的事情?这里有一篇关于这个主题的帖子 诀窍是使用
document.addEventListener("DOMSubtreeModified", function(event){
收听谷歌搜索页面上的每一个更改。如何将内容脚本注入到所有谷歌主页?听起来很难看,但可能有用…谢谢你的回答@CamiloMartin。我一直有一个内容脚本,但它不会告诉我什么时候执行搜索,因为谷歌使用的是Ajax。那么分析搜索结果而不是webrequest呢?您可以定期查看页面以查找搜索结果并分析内容。有点慢,但我不确定如果webRequest不能为您提供所需内容,您还会做什么代码>(在内容脚本上)。@Kaizo真的吗?哇,真出乎意料。也许对搜索的工作方式进行反向工程,你可以用
someApi.oldFunction=function(){yourCode();oldFunction();}
替换它调用的一些函数,但这有点糟糕。或者监视某个DOM元素何时获得新内容?也有点糟糕…每次搜索都会触发多次事件。我试过这样做:document.addEventListener(“domsubtreedimend”,函数(事件){console.log(document.getElementById('gs_taif0').value | | document.getElementById('gbqfq').value)})代码>并为添加到dom中的每个项激发事件。我做错了吗?有没有办法让它触发一个事件而不是15个?网站上对此进行了解释。只听15个“DOMSubtreeModification”中的第一个的方法是在google结果主DIV中添加一个小DIV。如果用户进行了新的搜索,则该DIV将被google删除。这会很好地工作。这或多或少是@CamiloMartin建议做的,但是监视所有DOM。谢谢