首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >内联更改Fancybox2 iframe

内联更改Fancybox2 iframe
EN

Stack Overflow用户
提问于 2012-12-03 20:06:21
回答 1查看 1.3K关注 0票数 0

我有几种情况,我需要改变css的Fancybox iframe内联,但我还没有找到如何做到这一点。

编辑--部分成功地改变了函数内的选项,改变了iframe的高度、宽度和填充,但是wrapCSS没有这样做,因此我无法调整字体的颜色或大小。我也不能将它与下面列出的其他方法结合起来。

代码语言:javascript
复制
parent.$.fancybox({
content: "Thank you for creating an account",
         type : 'iframe',
 padding : 50,
         width: 50,
         height:50,   
});          

我尝试过的其他方法:

  1. 分配类
  2. 在javascript -$(This).css({.})中设置css
  3. 在脚本中设置iframes css -$(“#customer_info”).css({.});
  4. 向fancybox-wrap $(‘.fancybox-wrap’).addClass(‘thank_you’)添加一个类;

方法3(在脚本中设置iframe的css )成功地更改了iframe内容的css,但没有更改iframe容器的css。

我需要这样做的一个例子是,当客户提交表单时,显示的成功消息需要一个不同的布局(最重要的是iframe的高度和宽度)。

代码语言:javascript
复制
success: function () {                           
   $("#customer_info").fadeOut("fast", function(){
   $(this).before("Thank you for creating an account");
   setTimeout("$.fancybox.close()", 1000);
   });                         
}

我正在使用Fancybox2,其他布局问题要求我设置这个内联,而不是允许iframe调整大小以适应内容(除非有一种方法可以在一个地方覆盖它,而不对显示的任何其他内容调整iframe的大小)

我在另一篇文章中看到了这个脚本,如果我能找到正确的方法将它插入到我的代码中,那么这个脚本就会工作。

代码语言:javascript
复制
$('.fancybox-inner').height($(this).contents().find('body').height()+30);   
EN

回答 1

Stack Overflow用户

发布于 2012-12-03 23:14:28

您必须更新两个css类。..fancybox内部用于调整内容的大小,..fancybox皮肤用于调整皮肤的大小。

代码语言:javascript
复制
$('.fancybox-iframe').contents().find('body').replaceWith('<body>Thank you</body>')
$('.fancybox-inner').css('width', 200);
$('.fancybox-skin').css('width', 200);

你也可以用

代码语言:javascript
复制
$.fancybox.update()

但这只会将FancyBox高度更新为内容的高度。

你最好和最干净的选择是打开一个新的fancybox与感谢信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13690817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档