我有一个花式框弹出消息,上面有一个标记为“继续”的按钮。当我单击此按钮时,花式框关闭。我想要的是这个。我要单击“继续”按钮,然后要关闭花式框(如当前那样),然后在此之后弹出另一个花式框(登录屏幕)。我有使登录屏幕弹出的代码,但是在关闭上一个花式框时不知道如何执行此操作。我有继续按钮的花式框代码
$.fancybox({
'content': "<div style=\"border-width: 0px; width: 350px; height: 80px; color:#00285D; font-weight:bold;\">" + message + "<br/><br/>" + "<p class=\"center\"><a href=\"#\" onclick =\"parent.$.fancybox.close();\" class=\"btn-continue\">Continue</a></p>"
});
我有以下代码用于弹出登录屏幕(基于ID为SignIn的链接:
<script type="text/javascript">
$(document).ready(function () {
CMF.pop('#SignIn',1010,459,0,0,'iframe');
});
</script>
pop方法如下所示:
// element, width, height, padding, margin, type, refresh(enabled if undefined)
pop: function (el, w, h, p, m, i, r) {
$(el).fancybox({
width: w,
height: h,
padding: p,
margin: m,
type: i,
scrolling: 'no',
onClosed: function () {
if( r == undefined)
parent.location.reload(true);
}
});
} // fancybox
有任何想法吗?
谢谢,
萨钦
最佳答案
演示页面将帮助人们更快地回答您的问题,从而节省您和他们的时间。但是无论如何.. FancyBox显然具有很多“自动”功能,因为它似乎是一种简单的图库解决方案。
而不是调用:
parent.$.fancybox.close();
在我的示例中这甚至都不起作用,因为它存在于当前窗口中,而不存在于window.parent中,因此,如果需要的话,$ .fancybox.close()会很好。您只希望精美框自动过渡到新内容,因此只需触发click事件,如下所示:
$('#SignIn').trigger('click');
确保不调用close或以某种方式否定此点击...?是的,我也认为FancyBox没有一种触发弹出窗口而不假冒您对宿主项目“点击”的方式是愚蠢的……
但直接从马口中出来:http://fancybox.net/blog(在#6下看)
希望对您有帮助-ck