我在使用Fancybox 3时遇到了问题。我的目标是嵌入一个响应式Iframe,但经过数小时的测试后,我无法使其工作。Fancybox在Ruby on Rails上无法正常工作
根据该文件,如果我想插入一个IFRAME,我应该这样写:
<a data-fancybox data-type="iframe" data-src="http://codepen.io/fancyapps/full/jyEGGG/" href="javascript:;">
Webpage
</a>
有了这个代码,当我点击链接,没有任何反应。我很确定这里有一个ruby和rails结构的问题,因为当我在我的视图中放置了一些javascript时,fancybox启动了BUT,将这个错误返回给框中:“请求的内容无法加载,请重试后来。”
这里是我的JavaScript和HTML在我看来几乎是工作代码:
<script type="text/javascript">
var fancybox = function(){
$('.fancybox').fancybox({
iframe: {
css: {
width: '100%',
height: '100%',
}
}
});
};
$(document).on("page:load ready", fancybox);
<a class="fancybox" data-fancybox data-type="iframe" data-src="https://spaces.archilogic.com/3d/!02e31ca5-41c2-4a7f-a25d-601810a7c85a?mode=view&main-menu=interior&view-menu=none&presentation=loop" href="javascript:;">
<h1>TITLE</h1>
</a>
最后,我设法得到的iFrame做这个工作,但它计算的iFrame大小在页面加载时,如果浏览器设置为不同大小,则不会再次移动:
<script type="text/javascript">
jQuery(function() {
$("#visite3d").fancybox({
width : '100%',
height : '100%',
});
});
<a id="visite3d" class="iframe" href="https://spaces.archilogic.com/3d/!02e31ca5-41c2-4a7f-a25d-601810a7c85a?mode=view&main-menu=interior&view-menu=none&presentation=loop">
<h1>Visite 3D</h1>
</a>
所以任何人都知道为什么的fancybox的iframe是不是因为它应该工作的时候我插入到文档中提供的简单的HTML?
在此先感谢。