Всплывающее окно Fancybox iframe не отображается в IE - PullRequest
0 голосов
/ 23 марта 2012

Я использую 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 ]

1 голос
/ 29 ноября 2012

Добавление autoSize: VALUE разобрался с моей проблемой загрузки IE.Дать ему шанс.Skweekah

0 голосов
/ 13 марта 2013

попробуйте добавить это попробуйте добавить это попробуйте добавить это

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
0 голосов
/ 23 марта 2012

Я думаю, что будет проблема совместимости браузера ,,

попробуйте это: -

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

или сначала проверьте ваш код IE очень чувствителен к регистру. проверить, если дать какие-либо ошибки HTML или теги ..

запустить этот код в валидаторе,

проверьте ваш скрипт еще раз ///

0 голосов
/ 07 ноября 2012

Это действительно не очень хороший код, но я решил эту проблему, перезагрузив фрейм в обработчике событий 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);
        });

    }
}
0 голосов
/ 23 марта 2012

У вас есть лишний } в последней строке?Или это просто опечатка?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...