Fancybox popup iframe内容未在IE中显示

时间:2012-03-23 06:24:25

标签: jquery internet-explorer browser fancybox

我正在使用 fancybox 1.3.X ,我有iframe,里面我有一个按钮,点击该fancybox弹出iframe将被加载,iframe的内容加载从文件,它在除 IE 之外的所有浏览器中都能很好地工作。在IE 内容不会显示只会出现弹出。是否有任何解决方法。

这段代码如下所示。

$("a.iframe").fancybox({
            'transitionIn'      :   'elastic',
            'transitionOut'     :   'elastic',
            'speedIn'           :   600, 
            'speedOut'          :   200, 
            'overlayShow'       :   false,
            'width'             :   250,
            'height'            :   190,
            'type'              :   'iframe'

            });

我在这里打电话给表格

<iframe name="report" id="report">
    <a class="iframe" href="edit-details.php?id=8">
</iframe>

5 个答案:

答案 0 :(得分:1)

添加autoSize:VALUE整理了我的IE加载问题。试一试。 Skweekah

答案 1 :(得分:0)

最后一行有额外的}?或者这只是一个错字?

答案 2 :(得分:0)

我认为会出现浏览器兼容性问题,

试试这个: -

<meta http-equiv="X-UA-Compatible" content="IE=8" />
<meta http-equiv="X-UA-Compatible" content="IE=7" /> 

或首先检查你的代码IE非常具有案例感。检查是否给出任何html错误或标签..

在验证程序中运行此代码,

再次检查你的脚本///

答案 3 :(得分:0)

它真的不是很好的代码,但我通过在afterShow和onUpdate事件处理程序中重新加载框架来解决这个问题。对我来说,在此解决方法之后,IE现在显示内容。

var bUpdateOnce = true;

$(".fb2").fancybox({
  autoResize : true,
  autoCenter : true,
  autoSize : true,

  onUpdate : updateIFrame,
  afterShow : updateIFrame,
  beforeShow : function() {
    bUpdateOnce = true;
  },
  ...
  ..

function updateIFrame() {
    // ie fix, if not, window is empty
    if(bUpdateOnce) {
        bUpdateOnce = false;
        //reload all iFrames
        $('iframe').each(function() {
            this.contentWindow.location.reload(true);
        });

    }
}

答案 4 :(得分:0)

尝试添加此功能 尝试添加这个 尝试添加此

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">