我有一个以这种方式打开的jquery模式弹出窗口:
var OpenPurchasePage = function (productID) {
$(this).spPopup(
{
width: 625,
height: 445,
useFrame: true,
effectIn: "zoomIn",
effectOut: "slideZoom",
css3Effects: "flipInVer",
href: '../purchase/delegate.aspx?sid=' + productID,
onClose: function () { parent.location.reload(true); }
});
}
我使用的弹出插件支持onClose
事件,我需要在弹出窗口关闭时刷新我的父页面。但问题是我使用该插件中可用的CSS3效果,我希望在触发OnClose
函数之前完全运行结束效果。假设关闭效果需要2秒才能完美无缺。但问题是OnClose
函数立即触发,结束效果不能完全执行。
我尝试了以下提到的方法:
但它们都没有使父页面的重新加载过程延迟到执行效果(例如延迟2秒)。
请指导一下如何创建这个间隔?
答案 0 :(得分:1)
setTimeout应该绝对有效:onClose: function () { window.setTimeout(myfunc, 2000); }
然后你需要一个函数function myfunc () { parent.location.reload(true); }
什么是parent
?它已经这样工作了吗?