我有一个花哨的弹出框消息,其中有一个标有“继续”的按钮。当我点击这个按钮时,花式框关闭。我想要的是这个。我想点击继续按钮,我想要关闭花式框(就像它目前那样)然后我想要在那之后弹出另一个花式框(屏幕上的标志)。我有代码,使登录屏幕弹出,但不知道如何在关闭上一个花式框时执行此操作。我有这个代码用于带有继续按钮的花式框
$.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
有什么想法吗?
谢谢,
萨钦
答案 0 :(得分:2)
演示页面可以帮助人们更快地回答您的问题,从而节省您和他们的时间。但无论如何.. FancyBox显然有很多“自动”功能,因为它似乎是一个简单的图像库解决方案。
而不是打电话:
parent.$.fancybox.close();
在我的例子中甚至不起作用,因为它存在于当前窗口中,而不是window.parent,所以如果需要的话,$ .fancybox.close()就可以了。你只想要花哨的盒子自动转换到新的内容,所以只需触发这样的点击事件:
$('#SignIn').trigger('click');
一定不要打电话给它,否则它会以某种方式否定这个点击......?是的,我也认为FancyBox没有办法触发弹出窗口,而不会让你假装在主机项目上“点击”,这是愚蠢的......
但直接来自马的嘴:http://fancybox.net/blog(看看#6)
希望帮助-ck