fancybox v2 iframe 高度调整大小

Posted

技术标签:

【中文标题】fancybox v2 iframe 高度调整大小【英文标题】:fancybox v2 iframe height resize 【发布时间】:2014-05-19 02:04:37 【问题描述】:

有没有办法让下面的脚本只适用于fancybox中的iframe?我有一个包含画廊和 iframe 的页面。我希望 iframe 具有不同的高度而不影响图像大小。

$('.fancybox').fancybox(
afterLoad: function () 
    this.width = $(this.element).data("width");
    this.height = $(this.element).data("height");

);

【问题讨论】:

【参考方案1】:

在将data-* 值传递给fancybox 之前,您可以设置一个条件来验证内容的type,例如:

$(".fancybox").fancybox(
    afterLoad: function () 
        if (this.type == "iframe") 
            this.width = $(this.element).data("width");
            this.height = $(this.element).data("height");
        ;
    
);

JSFIDDLE


您也可以参考$(this),如this.element

$(".fancybox").fancybox(
    afterLoad: function () 
        if (this.type == "iframe") 
            this.width = this.element.data("width");
            this.height = this.element.data("height");
        ;
    
);

JSFIDDLE

【讨论】:

【参考方案2】:

这段代码对我有用!

$.fancybox.open(
        maxWidth: 1263,
        // fitToView: true,
        width: '90%',
        // maxHeight: 292,
        autoSize: false,
        closeClick: false,
        openEffect: 'elastic',
        closeBtn: true,
        closeEffect: 'elastic',
        href: '/team/' + $(this).data("cv") + '_team.html',
        type: 'iframe',
        'afterShow': function() 
          $(".fancybox-wrap").height($(".fancybox-iframe").contents().find("html").height() + 30);
          $(".fancybox-skin").height($(".fancybox-iframe").contents().find("html").height());
          $(".fancybox-inner").height($(".fancybox-iframe").contents().find("html").height());
        
    );

【讨论】:

以上是关于fancybox v2 iframe 高度调整大小的主要内容,如果未能解决你的问题,请参考以下文章

根据内部更改的内容动态调整 jQuery Fancybox 的 iframe 高度

更改fancybox iframe的大小-我可以更改宽度但不能更改高度?

如何设置fancybox iframe的高度和宽度

Fancybox 高度调整动态内容的大小

动态调整 FancyBox 的高度

Fancybox V2 适合内容宽度 iframe