1

我知道之前有人问过这个问题,但是我无法让我的代码正常工作。

我启动了我的fancybox:

$(document).ready(function() {

            $('.fancybox').on('click', function(event) {
    event.preventDefault();
    $.fancybox({
        'type' : 'iframe',
        // hide the related video suggestions and autoplay the video
        'href' : this.href = this.href.replace(new RegExp("([0-9])","i"),'moogaloop.swf?clip_id=$1') + '&autoplay=1',
        'overlayShow' : true,
        'centerOnScroll' : true,
        'speedIn' : 100,
        'speedOut' : 50,
        'width' : 640,
        'height' : 480
    });
});

});

然后调用 iframe:

<a class="fancybox fancybox.iframe" href="http://vimeo.com/123456">

但是当我关闭弹出窗口然后尝试再次打开该视频时没有显示,任何人都可以帮我解决它,大多数解决方案都与“类型”有关:“内联”并且没有接缝与我的示例一起使用。

非常感谢,

4

1 回答 1

7

如果您使用的是 fancybox v2.x,那么您的脚本中不需要(过时的)选项(v1.3.4)。你宁愿做

1)。像这样设置你的html

<a class="fancybox" href="http://vimeo.com/123456">

...删除特殊类fancybox.iframe

2)。添加助手媒体 js 文件,如:

<script type="text/javascript" src="../helpers/jquery.fancybox-media.js"></script>

...相应地设置你的路径

3)。使用这个脚本

jQuery(document).ready(function ($) {
    $('.fancybox').fancybox({
        helpers: {
            media: {}
        }
    });
});

...并为自己省去一些麻烦。

JSFIDDLE

如果需要,您可以添加更多 API 选项。检查http://fancyapps.com/fancybox/#docs了解 v2.x 的选项

于 2013-06-19T22:46:13.720 回答