【问题标题】:Fancybox Images and Video in same Gallery同一个图库中的 Fancybox 图像和视频
【发布时间】:2012-03-29 14:48:49
【问题描述】:

我正在为我的弹出式画廊使用精美的框,但我遇到了问题。我想在同一个画廊中拥有图像和视频。我有一个缩略图,显示了我的作品集中的不同作品,我们是一家设计和视频公司,因此我有能力在同一个弹出式画廊中完成这两项工作至关重要。以前有没有其他人遇到过这个问题?我想人们想要这样做是很常见的。

这是我的标记...我有相同的 rel 属性,所以它们在同一个库中,但我调用了不同的脚本,以便可以正确设置类型。

$("a#brianguehring").fancybox();

$("a#brianguehring-video").fancybox({ 
    'type'          : 'swf',
    'transitionIn'      : 'none',
    'transitionOut'     : 'none',
});

<span>
<a class="grouped_elements icon_camera" rel="group-brian" id="brianguehring" title="Brian Guehring Website" href="images/portfolio/brianguehring-one.png"></a>
</span>

<span>
<a class="grouped_elements" rel="group-brian" id="brianguehring-video" title="Pasquale Vitello'Showreel 2010" href="http://vimeo.com/24081323">&nbsp;</a>
</span>

【问题讨论】:

  • 什么版本的fancybox?我认为您的方法是正确的,但是您的脚本中可能缺少某些元素,例如,我认为您不应该为视频设置 'type':'swf',而是设置 'iframe'。您可能还需要像http://player.vimeo.com/video/24081323?title=0&amp;amp;byline=0&amp;amp;portrait=0 等vimeo 网站的embed 代码中提供的那样更改URL。最后,尝试使用类而不是ID,这样您就可以在您的多个元素上重复使用相同的代码代码。

标签: jquery fancybox markup


【解决方案1】:

在这里我已经开始工作了。我假设您希望图像和视频在同一组中。 我将工作示例放在 JS Fiddle 上 - http://jsfiddle.net/4pAQz/1/

您的 JS 调用将如下所示。这一切都必须在一个电话中完成。

$(document).ready(function(e) {
$("a[rel=example_group]").fancybox({
    'transitionIn'      : 'none',
    'transitionOut'     : 'none',
    'titlePosition'     : 'over',
    'titleFormat'       : function(title, currentArray, currentIndex, currentOpts) {
        return '<span id="fancybox-title-over">Image ' +  (currentIndex + 1) + ' / ' + currentArray.length + ' ' + title + '</span>';
    }
});
});

您的 HTML 如下所示: 注意:请注意 Vimeo 播放器的 href 是 player.vimeo.com/video/YourIDHere。无需 SWF 代码。它只是工作。您还需要两个锚 rel="" 名称相同,以便将对象放入同一组中。

<div>
 <a rel="example_group" title="Custom title" href="http://farm3.static.flickr.com/2641/4163443812_df0b200930.jpg">
 <img alt="" src="http://farm3.static.flickr.com/2641/4163443812_df0b200930_m.jpg" />
 </a>
 <a rel="example_group" title="Title of video here" class="various iframe" href="http://player.vimeo.com/video/24081323?title=0&amp;byline=0&amp;portrait=0">
 <img alt="" src="http://farm3.static.flickr.com/2591/4135665747_3091966c91_m.jpg" />
 </a></div>

【讨论】:

  • 添加 'type' : 'swf' 后,我仍然只得到一个弹出的空白视频,实际上并没有播放。这有什么原因吗? 2012.delineamultimedia.com -> 我正在处理前 2 张图片。
  • 您发送的 JS Fiddle 链接对我不起作用,我尝试清除缓存但没有成功。
  • hmm JS Fiddle 链接它自己不起作用?或者这个例子不起作用。我刚试了一下,它奏效了。看起来您的示例在您的演示站点上工作。左侧箭头的过点存在问题,它覆盖了 Vimeo 播放按钮的播放按钮。您可能希望为 FancyBox 箭头的可悬停区域覆盖一些 CSS。
  • 我看到 JS fiddle 实际上搞砸了。将完整的 HTML 复制并粘贴到空白 HTML 页面,然后在您的计算机上本地运行。那应该行得通。但是箭头仍然在阻塞播放按钮和嵌入框。只是可悬停区域。这可以通过超越 CSS 来解决。另外,请尝试使用 player.vimeo.com URL,例如“player.vimeo.com/video/…”。如果你这样做,你就不需要 type: 选项。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-06
  • 1970-01-01
相关资源
最近更新 更多