1

如果我将 youtube 链接 Fancybox (而不是像通常没有 fancybox 那样嵌入代码),我如何避免在页面加载时自动播放?

我希望能够单击图像以开始播放。

http://www.estherwarda.com/wci/homepage/

4

2 回答 2

4

如果您使用的是最新版本的 Fancybox (2+),YouTube 和 Vimeo 现在可以很好地识别和处理。

然而,由于大多数文档都在 Fancybox 1 上,因此需要进行一些挖掘才能找到这一点。

Fancybox 会去除您的 YouTube 网址并添加一些默认参数:

  • autoplay=1(视频将自动播放)
  • autohide=1(播放视频后控件将隐藏)
  • fs=1(启用全屏)
  • rel=0(相关视频被隐藏)
  • hd=1(启用高清播放)
  • wmode=opaque(使用 YouTube 和灯箱修复 z-index)
  • enablejsapi=1(启用 Javascript API)

这意味着通常您可以在 URL 中传递这些参数并应用它们,但 Fancybox 2 会忽略这些参数并使用预设值。

不要沮丧!您可以覆盖脚本中的那些。几种方式。

普通媒体嵌入:

  $(".fancybox").fancybox({
      helpers : {
          media: true
      }
  });

自定义 URL 参数方法一:

  $(".fancybox").fancybox({
      helpers : {
          media: {
              youtube : {
                  params : {
                      autoplay : 0
                  }
              }
          }
      }
  });

自定义 URL 参数方法二:

  $(".fancybox").fancybox({,
       helpers : {
          media: true
      },
      youtube : {
          autoplay: 0
      }
  });

查看 helpers > jquery.fancybox-media.js 文件以获取更多详细信息(查看评论)。Fancybox 2 还支持多种 URL 格式,因此您无需担心应该使用哪个 URL 版本(即youtube.com/watch?v=###youtu.be/###)。

于 2012-09-11T17:51:31.477 回答
2

这是关于你的嵌入代码。Youtube 的旧默认嵌入代码如下所示:http://www.youtube.com/v/bla?version=3. 可以采用自动播放参数来控制加载时的播放。你可以推&autoplay=0http://www.youtube.com/v/bla

http://www.youtube.com/v/bla?version=3&autoplay=0
于 2012-04-18T23:55:39.977 回答