1

我正在使用jquery fancybox,我想在fancybox弹出之前隐藏一个包含pdf文件的iframe(这工作正常),然后在fancybox关闭之前我想让iframe再次可见,因为z-index问题与pdf iframe。我的问题是 beforeClose 甚至似乎没有触发。这是我放在图像和 iframe 下方的代码。

<script src="http://www.elevateweb.co.uk/wp-content/themes/radial/jquery.fancybox.pack.js" type="text/javascript"></script>

   var frame = document.getElementById('Frame');

   jQuery("#zoom_08").bind("click", function (e) {
         e.preventDefault();
         var ez = $('#zoom_08').data('elevateZoom');
           $.fancybox(ez.getGalleryList());
           frame.style.display = 'none';
           return false;
    });


    $.fancybox({
      beforeClose: function () {
       frame.style.display = '';
             }
    });

我还是 Jquery 的新手,所以我不确定我是否理解我做错了什么。提前感谢您的帮助。

<iframe id="Frame"  width="680" height="1000" runat="server" />

在 Page_Load 我执行以下操作来设置 iFrame 的 src

 Frame.Attributes.Add("src", "./Files/" + Request.QueryString["certfile"].ToString());
4

1 回答 1

2

试试这个

jQuery("#zoom_08").bind("click", function (e) {
    e.preventDefault();
    var ez = $('#zoom_08').data('elevateZoom');
    jQuery.fancybox(ez.getGalleryList(), {
        beforeShow: function () {
            frame.style.display = 'none';
        },
        afterClose: function () {
            frame.style.display = ''; // or .display = "block"; ?
        }
    });
    return false;
});

...并删除:

$.fancybox({
  beforeClose: function () {
   frame.style.display = '';
         }
});

因为那beforeClose将是一个什么都不会打开的花式盒子。

于 2013-03-19T00:01:29.253 回答