Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript chrome.webNavigation.onCompleted和chrome.tabs.onUpdated.addListener与';完成';_Javascript_Jquery_Google Chrome_Google Chrome Extension - Fatal编程技术网

Javascript chrome.webNavigation.onCompleted和chrome.tabs.onUpdated.addListener与';完成';

Javascript chrome.webNavigation.onCompleted和chrome.tabs.onUpdated.addListener与';完成';,javascript,jquery,google-chrome,google-chrome-extension,Javascript,Jquery,Google Chrome,Google Chrome Extension,在ChromeAPI中,理论上有两个函数指向同一个evet chrome.webNavigation.onCompleted和chrome.tabs.onUpdated.addListener与changeinfo=complete 这两者之间的区别是什么?哪一个保证页面中的所有内容都已加载。我发现,chrome.tabs.onUpdated.addListener有时甚至在剩下很少的http请求时也会触发 即使导航发生在子帧中,也会调用chrome.webNavigation.onComple

在ChromeAPI中,理论上有两个函数指向同一个evet

chrome.webNavigation.onCompleted
chrome.tabs.onUpdated.addListener
changeinfo=complete


这两者之间的区别是什么?哪一个保证页面中的所有内容都已加载。我发现,
chrome.tabs.onUpdated.addListener
有时甚至在剩下很少的http请求时也会触发

即使导航发生在子帧中,也会调用
chrome.webNavigation.onCompleted
,而
chrome.tabs.onUpdated.addListener
仅在由于选项卡属性(如
status
url
的更改)而更新选项卡时才会触发。观察传递给回调函数的changeInfo对象

另外,
chrome.webNavigation.onCompleted
支持过滤事件,因此您可以指定过滤器,以便仅在通过过滤器时触发事件。观察如何将筛选器应用于事件

因此,如果您同时使用这两个事件侦听器,您会发现,
chrome.webNavigation.onCompleted
针对单个选项卡多次触发,而
chrome.tabs.onUpdated.addListener
可能只触发一次或两次(由于从加载状态更改为完成状态)

我希望这有帮助