jQuery/HTML5 模态视频如果存在自动播放播放视频

jQuery/HTML5 modal video if autoplay is present play video

为了更容易理解请看一下Codepen: http://codepen.io/hennysmafter/pen/YqmLKR

codepen 是实际代码的简化版本,只有必要的部分!

在 codepen 中你有两个弹出窗口,一个弹出窗口有一个视频元素 with autoplay,另一个有一个视频元素 without autoplay

文档就绪时,页面上的所有视频元素都暂停由于实际代码中有其他视频,因此无法更改

现在我只需要调整代码以便:

  1. 点击弹出窗口并添加 class opened(已经存在)
  2. 如果弹出窗口中的视频元素具有自动播放功能,则播放视频(不工作)
  3. 或者没有自动播放所以什么都不做

    if ($('.modal-box.opened').find('video').attr(autoplay) == true) {
        $('.modal-box.opened').find('video').each(function() {
          $(this).get(0).play();
    });
    }
    

您有两个常见的错误:在检查 autoplay 是否为真的部分,您 只使用了 1 个等号

单个 = 用于设置变量,其中两个用于检查相等性。

编辑: 您还试图对 jQuery 对象使用传统的 HTML 样式属性检查。要检查 jQuery 中的属性,您需要使用 .attr(attributeName)

因此,正确的行应该是 if ($('.modal-box.opened').find('video').attr(autoplay) == true) {