加载内容后,我正在尝试在Fancybox模态内容上初始化FitVids插件。如果我在用户调整视口大小时使用回调,它可以完美地工作,但是如果我尝试让它在显示内容后应用它,我什么也得不到。我已经进行了测试,以确保通过投入来确保效果,并且是成功的。onUpdate
afterShow
afterShow
console.log('whatever')
这是我正在使用的代码:
$('.tile-link.fancybox').click(function() {
var url = $(this).data('url');
var getContent = $('.tile-lightbox-content').load(url + ' #lightboxBucketContent');
$('.tile-lightbox-content').empty();
$.fancybox({
content: getContent,
width: '90%',
height: '90%',
type: 'html',
scrolling: 'no',
modal: false,
padding: 20,
enableEscapeButton: true,
titleShow: true,
autoSize: false,
autoResize: true,
autoDimensions: false,
aspectRatio: true,
helpers: {
media: true
},
// afterShow doesn't work
afterShow: function() {
$('.fancybox-inner').fitVids({
customSelector: 'iframe[src^="http://somewebsite.com"]'
});
},
// onUpdate works correctly
onUpdate: function() {
$('.fancybox-inner').fitVids({
customSelector: 'iframe[src^="http://somewebsite.com"]'
});
}
});
});
我在一个 WordPress 网站上使用它,其中内容被加载到一些砖石瓦片中,当点击并通过 jQueryload
函数加载页面的一部分时,这些瓦片会触发一个花式框模式窗口。除了 FitVids 之外,一切都很好用。平铺模态内容通常包含 iframe 视频嵌入,我需要它们在触摸/移动设备上配合。
提前致谢。