Fancybox卡在IE中加载iframe

Fal*_*014 10 iframe jquery internet-explorer fancybox fancybox-2

我在使用fancybox在IE中的iframe中加载PDF时遇到问题.当我点击链接时,我得到了gif加载器,它只是永远旋转.控制台或页面上没有错误或类似的错误.所有版本的IE都会出现问题.所有其他浏览器工作正常.此外,PDF是内部文件.

这是一些代码:


HTML

 <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="utf-8">

        <link rel="stylesheet" type="text/css" href=<?php echo base_url("templates/style1/css/jquery.fancybox.css") ?> />

        <script src=<?php echo base_url("js/jquery-1.7.2.min.js") ?> type="text/javascript"></script>
        <script type="text/javascript" src="../js/jquery.fancybox.js"></script>

    </head>
    <body>
        <a class="fancybox-media italic" href="../contract_docs/dummy.pdf" >Test Doc</a>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

JS

    $(document).ready(function(){
        /* fancybox handler */
        $('.fancybox-media').fancybox({
            openEffect  : 'none',
            closeEffect : 'none',
            autoSize: true,
            type : 'iframe'
        });
    });
Run Code Online (Sandbox Code Playgroud)

编辑: 我也试过升级jQuery,无济于事.

编辑:这是一个jsFiddle,非常简单,在我的IE浏览器中不起作用.

JFK*_*JFK 20

似乎禁用预加载修复了iframe和IE的问题所以试试这个:

  $(document).ready(function () {
      /* fancybox handler */
      $('.fancybox-media').fancybox({
          openEffect: 'none',
          closeEffect: 'none',
          autoSize: true,
          type: 'iframe',
          iframe: {
              preload: false // fixes issue with iframe and IE
          }
      });
  });
Run Code Online (Sandbox Code Playgroud)

用fancybox v2.1.4和IE7测试.

检查JSFIDDLE

  • "preload:false"修复了Android 4.1.2股票浏览器(Mobile Safari)的问题.谢谢! (2认同)