fancybox事件beforeClose未触发

时间:2013-03-18 22:14:01

标签: jquery asp.net fancybox

我正在使用jquery fancybox,我想在fancybox弹出打开之前隐藏包含pdf文件的iframe(工作正常)然后在fancybox的beforeClose之前我想让iframe再次显示由于z- 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());

1 个答案:

答案 0 :(得分: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适用于没有打开任何内容的花式框。