我有一个Fancybox 2 iframe模态窗口,其中包含一个“添加到购物车”表单。提交表单后,将在Fancybox模式窗口中加载成功/确认页面。
我想在此成功/确认页面上运行一个脚本,关闭Fancybox窗口并将父窗口重定向到此URL:'/ shop / basket'我该怎么做?
这是我目前获得的代码(仅关闭Fancybox窗口,但不执行父窗口重定向):
<script type="text/javascript">
$(function() { parent.$.fancybox.close(); });
</script>
编辑:
这是我在functions.js文件中初始化Fancybox的方法:
$(".add-to-cart-popup").fancybox({
width : 580,
height : 744,
closeClick : false,
scrolling : 'auto'
});
编辑2:
这段代码完成了我正在寻找的东西 - 但任何人都可以想到更好的方法吗?这只是我一起入侵的事情:
<script type="text/javascript">
$(function() { parent.$.fancybox.close(); });
window.parent.location.href = '/shop/basket';
</script>
答案 0 :(得分:7)
不要尝试从子页面重定向,而是从父页面本身。“/ p>
如果您的父页面中有此代码(functions.js):
$(".add-to-cart-popup").fancybox({
width : 580,
height : 744,
closeClick : false,
scrolling : 'auto'
});
然后只需添加afterClose
回调就像;
$(".add-to-cart-popup").fancybox({
width : 580,
height : 744,
closeClick : false,
scrolling : 'auto',
afterClose : function() {
location.href = "/shop/basket";
}
});
...您仍然需要从子页面执行parent.$.fancybox.close();