【发布时间】:2015-05-20 09:55:10
【问题描述】:
我正在开发一个扩展程序,当用户在 youtube 上切换视频时需要触发该扩展程序。
我尝试收听 load 或 pageshow,但当用户观看视频并点击另一个视频时,它们不会被触发
var tabs = require("sdk/tabs");
tabs.on('pageshow', function(tab) {
//do something
});
【问题讨论】:
-
我不认为 youtube 使用 pageshow,这是一个监视页面切换的插件:addons.mozilla.org/en-US/firefox/addon/listenonrepeat 我会研究这个人是如何做到的。我过去也做过,但我正在尝试一些复杂的方法(在这里使用 nsIWebProgressListener:github.com/Noitidart/Listen-on-Repeat-Youtube-Video-Repeater)
-
我认为最简单的解决方案是将突变观察者附加到 youtube 页面加载时的红色加载栏上,因为此后不会触发页面加载。从这里:stackoverflow.com/a/18398921/1828637
-
此解决方案:stackoverflow.com/questions/30464941/… 适用于 youtube 网址更改
-
感谢分享蒂亚戈!他把解决方案都很好很整洁,你可以在这里看到我也有 onLocationChange 哈哈,但我的周围有很多代码,所以看起来很吓人。
标签: firefox youtube firefox-addon firefox-addon-sdk