使用jquery.fancybox-media.js时,Youtubevideo无法在ipad上的fancybox中运行

我试图在具有响应function的fancybox中使用youtubevideo,以便它可以根据我使用jquery.fancybox-media.js的设备调整其尺寸,它在桌面上运行良好,但video无法在iPad上播放。

访问http://fancyapps.com/fancybox/然后点击Youtube(iframe)它只能在桌面上播放,而不能在iPad上播放。

它使用jquery.fancybox-media.js

自fancybox版本2.1.0起,有一个iframe API选项,允许您预加载iframe的内容; 默认值为true

不幸的是,自从jQuery v1.9 +我看到这个选项在尝试显示iframe内容时会以某种方式产生问题,特别是流媒体或PDF文档。

作为一种解决方法,我一直在禁用iframe预加载,并修复了报告的许多问题。

Fancybox为youtubevideo使用iframe类型,但他们的主页仍然使用默认值( true ),但是在您自己的网页中,您应该禁用此选项,您的YouTubevideo将在iPhone / iPad上运行,没有任何问题:

例如,这个hrml

 show youtube in fancybox 

…用这个脚本

 jQuery(document).ready(function($) { $(".fancybox").fancybox({ width: 620, // or whatever height: 420, type: "iframe", iframe : { preload: false } }); }); // ready 

……应该工作得很好。

请注意autoplay=1参数在移动设备中不起作用,因此您仍然需要clickvideo才能启动(这对我来说很有意义,因为您可能不想无意中浪费您的数据计划)

在iPad中查看JSFIDDLE ;)

编辑 :如果你不想有一个固定的iframe大小(响应性),那么只需删除大小选项,如:

 jQuery(document).ready(function($) { $(".fancybox").fancybox({ type: "iframe", iframe : { preload: false } }); }); // ready 

在iPad中查看更新的JSFIDDLE