通过Chrome扩展程序中的Javascript关闭YouTube视频的注释

时间:2014-06-06 18:54:43

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

对于我的Chrome扩展程序,我想关闭/开启YouTube视频的注释。以下是包含注释的示例视频:

http://www.youtube.com/watch?v=87kezJTpyMI

我搜索了很多。 YouTube提供了许多API方法来修改视频,但我找不到任何JavaScript功能来关闭注释。最有希望的解决方案似乎是一个url参数(iv_load_policy)hack但它不再起作用了。

http://www.youtube.com/watch?v=87kezJTpyMI&hd=1&iv_load_policy=3

如何通过JavaScript为Chrome扩展程序中的YouTube视频关闭注释?

3 个答案:

答案 0 :(得分:1)

使用this solution。它运作良好,并保持最新(我是作者)。我也会将当前代码粘贴到此处,但我只会尝试将其保持最新状态:

var settings_button = document.querySelector(".ytp-settings-button");
settings_button.click(); settings_button.click(); // open and close settings, so annotations label is created

var all_labels = document.getElementsByClassName("ytp-menuitem-label");
for (var i = 0; i < all_labels.length; i++) {
  if ((all_labels[i].innerHTML == "Annotations") && (all_labels[i].parentNode.getAttribute("aria-checked") == "true")) { // find the correct label and see if it is active
    all_labels[i].click(); // and in that case, click it
  }
}

答案 1 :(得分:0)

也许您手动触发点击注释关闭按钮,使用jquery这似乎有效:

$(".ytp-segmented-control-deselected").click()

答案 2 :(得分:-1)

我用这个:$("div.video-annotations").css("display", "none");

不确定它是否适用于Flash播放器!