【问题标题】:YoutubePlayer - onStateChanged event is not fired [duplicate]YoutubePlayer - 未触发 onStateChanged 事件 [重复]
【发布时间】:2012-08-20 15:27:08
【问题描述】:

可能重复:
addEventListener in content script not working

我正在迈出第一步来编写我的第一个 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();
}

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

【问题讨论】:

    标签: javascript google-chrome-extension youtube-api


    【解决方案1】:

    正如这个答案所说

    内容脚本在隔离环境中执行。你必须 在页面本身中注入 state 方法。

    遵循那里已经给出的建议Insert code into the page context using a content script

    【讨论】:

      猜你喜欢
      • 2015-01-28
      • 2013-02-20
      • 2014-08-09
      • 2017-12-27
      • 1970-01-01
      • 1970-01-01
      • 2017-06-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多