YoutubePlayer-onStateChanged事件未激发



可能重复:
内容脚本中的addEventListener不工作

我正在编写我的第一个Chrome扩展程序,但我在拦截YoutubePlayer中的事件时遇到了一些问题。扩展名是content_scripts类型的扩展名。在我的js文件中,我将事件处理程序附加到YoutubePlayer的"onStateChange"事件。代码看起来像

var playerLoaded = ( document.getElementById("movie_player") == null ), intervalId;
var attachEvents = function(){
    var currentVideo =document.getElementById("movie_player");
    if(currentVideo){
        currentVideo.addEventListener("onStateChange", "onytplayerStateChange");
         if(intervalId)
            clearInterval(intervalId);
    }
}
function onytplayerStateChange() {
   alert("Player's new state: " + newState);
};

if(!playerLoaded){
debugger;
    intervalId = setInterval(attachEvents,100);
} else{
debugger;
  attachEvents();
}

不幸的是onytlayerStateChange函数没有被触发,有人知道为什么吗?

正如这个答案所说的

内容脚本是在一个独立的环境中执行的。你必须在页面本身中注入state方法。

按照已经给出的建议使用内容脚本将代码插入页面上下文

相关内容

  • 没有找到相关文章

最新更新