当我关闭一个花式框弹出框架时,我希望我的父页面刷新.我在弹出窗口内有一个登录页面,所以当花式框关闭时,我需要刷新父页面以显示新的登录状态.
我可以让它工作没有iFrame代码:
<script type="text/javascript"> $(document).ready(function() { $("a.iframefancybox1").fancybox({ 'width': 800,'height': 450,'onClosed': function() { parent.location.reload(true); ;} }); }); </script>
但是我无法让它使用iFrame代码:
<script type="text/javascript"> $(document).ready(function() { $('a.iframefancybox1').fancybox({ 'width': 800,'type' : 'iframe' 'onClosed': function() { parent.location.reload(true); ;} }); }); </script>
问题是与这一行有关:
'type' : 'iframe'
一旦添加该行,弹出窗口停止工作.
解决方法
$(".fancybox").fancybox({ type: 'iframe',afterClose: function () { // USE THIS IT IS YOUR ANSWER THE KEY WORD IS "afterClose" parent.location.reload(true); } });
或者:
去你的jquery.fancybox.js文件,并去行1380它看起来像这样,并添加parent.location.reload(true);
afterClose: function (opts) { if (this.overlay) { this.overlay.fadeOut(opts.speedOut || 0,function () { $(this).remove(); parent.location.reload(true); }); } this.overlay = null; }