我正在构建一个Firefox插件,可在YouTube加载视频页面时解析该网址(例如https://www.youtube.com/watch?v=6tOQsswD4Tc)。使用Firefox的加载项api for Tabs,我无法在视频页面加载完成后捕获该事件。这可能是由于YT的新异步加载。因为如果我点击F5,我可以捕获事件。我正在使用此代码:
tabs.on("ready", function(tab) {
if(tab.url.search(/youtube\.com\/watch\?v=/)!=-1){
// do stuff
}
});
我尝试将其更改为'准备好','加载' Pageshow'但似乎没什么用。如何捕获页面加载事件?
答案 0 :(得分:2)
链接到解决方案提到chrome.webNavigation.onHistoryStateUpdated, the equivalent of that in Firefox is
onStateChange in
nsIWebProgressListener`:https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIWebProgressListener
另一个选项是插入内容脚本以在youtube加载栏上收听转换动画结束,同样在该堆栈帖子中指出。
Chrome extension is not loading on browser navigation at YouTube