如何在运行时在jQuery中设置回调函数

时间:2012-11-22 23:07:56

标签: jquery fancybox fancybox-2 jquery-callback

有没有办法在运行时定义回调函数。 这就是我需要的。 我正在使用fancybox。

$.fancybox.open({
            href : '#modal_div',
            minWidth:1150,
            minHeight:820,
            width:1150,
            height:820,
            autoResize:true,
            afterShow:function(){
                set_buttons();

            }
        });

在脚本的另一部分中,如果从服务器端收到的值为“true”,则fancybox关闭。我什么是定义一个回调“afterClose”,以便只在服务器响应为真时才做一些特定的事情,否则不应该关闭。

$.post("user_action.php", {
                    delete_item:item_id,
                    rel:item_type
                }, function(data){
                            if(data=="true"){
                                $.fancybox.close()
                              //do some stuff afterClose
                            }
                            else{
                            $.fancybox.close()
                            }
                }
            });

所以我需要的是随时随地设置回调功能!!

1 个答案:

答案 0 :(得分:0)

我可能无法正确理解您的问题。如果是这种情况,请修改您的OP,我会再试一次。

您实际上已经处于回调函数中,并且您已正确构建了IF测试,以查看“数据”的值是否为真。

因此,您可以在$.fancybox.close();指令之后立即执行所需内容。

注意:不要忘记在该指令后需要分号,对吧?