点击花式框弹出窗口需要弹出精美框

时间:2012-02-22 16:21:27

标签: javascript jquery fancybox

我有一个花哨的弹出框消息,其中有一个标有“继续”的按钮。当我点击这个按钮时,花式框关闭。我想要的是这个。我想点击继续按钮,我想要关闭花式框(就像它目前那样)然后我想要在那之后弹出另一个花式框(屏幕上的标志)。我有代码,使登录屏幕弹出,但不知道如何在关闭上一个花式框时执行此操作。我有这个代码用于带有继续按钮的花式框

$.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

有什么想法吗?

谢谢,

萨钦

1 个答案:

答案 0 :(得分:2)

演示页面可以帮助人们更快地回答您的问题,从而节省您和他们的时间。但无论如何.. FancyBox显然有很多“自动”功能,因为它似乎是一个简单的图像库解决方案。

而不是打电话:

parent.$.fancybox.close();

在我的例子中甚至不起作用,因为它存在于当前窗口中,而不是window.parent,所以如果需要的话,$ .fancybox.close()就可以了。你只想要花哨的盒子自动转换到新的内容,所以只需触发这样的点击事件:

$('#SignIn').trigger('click');

一定不要打电话给它,否则它会以某种方式否定这个点击......?是的,我也认为FancyBox没有办法触发弹出窗口,而不会让你假装在主机项目上“点击”,这是愚蠢的......

但直接来自马的嘴:http://fancybox.net/blog(看看#6)

希望帮助-ck