javascript - 如何使用 YouTube JS API 在 5 秒后跳过广告?

标签 javascript youtube-api javascript-injection

我几乎可以使用 JavaScript API 来控制 YouTube 播放器。

player = document.getElementById('movie_player');

但我找不到任何让我在 5 秒后跳过广告视频(如果有)的功能。

我怎样才能做到这一点?

最佳答案

我找不到一个干净的解决方案。但下面是我所做的,
选项 1:
在书签中添加以下代码,

javascript:(function(){setInterval(function() { var $cross = document.getElementsByClassName("ytp-ad-overlay-close-container")[0]; var $skip = document.getElementsByClassName("ytp-ad-skip-button")[0]; if ($cross != undefined) $cross.click(); if ($skip != undefined) $skip.click() }, 2000)})();
在书签中添加 JS 代码很容易,
  • 只需点击书签图标
  • 点击更多按钮

  • 在 URL 中添加上面的代码并为其命名,它现在将出现在书签选项卡中。
    每当您打开任何 youtube 视频时,只需单击您创建的书签即可跳过
    选项2(更好的选项):
  • 安装chrome扩展Requestly
  • 点击New Rule
  • 选择 Insert Scripts
  • 在请求 url 中包含 youtube。
  • 点击Add Custom Script并选择 Custom Code
  • 插入下面的代码并点击保存

  • setInterval(function() { 
                var $cross = document.getElementsByClassName("ytp-ad-overlay-close-container")[0]; 
                var $skip = document.getElementsByClassName("ytp-ad-skip-button")[0]; 
                if ($cross != undefined) $cross.click(); 
                if ($skip != undefined) $skip.click() 
                }, 2000);
    
    每当 youtube 打开时,RequeSTLy 都会运行此代码,并且会跳过广告和广告视频。
    注意:这是一个肮脏的解决方案,我使用它,它对我有用。可能存在更好的解决方案。

    关于javascript - 如何使用 YouTube JS API 在 5 秒后跳过广告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31522813/

    相关文章:

    javascript - 使用 Ajax 或 Javascript 发送 XML 请求并从其他服务器接收 XML 响应

    javascript - 错误: Invalid value for <image> attribute when passing in variable

    Android Youtube 播放器 Api - ERROR_CONNECTING_TO_SERVICE

    javascript - 控制 DOM 中每个 'src' 属性的变化

    javascript - 等待 Node 中的回调完成

    javascript - 每个与智能选择器

    javascript - YouTube 视频自动播放在 iOS 7.0.4 中突然停止工作

    c# - .net Youtube api v3 将视频上传到特定帐户

    javascript - 更改标题仅节省几秒钟(直到页面停止加载)

    正则表达式防止 sql/脚本注入(inject)