jquery fancybox关闭错误

时间:2012-08-07 08:57:56

标签: jquery fancybox

在fancybox ajax调用中有以下内容

               $.ajax({
                    type: 'POST',
                    url: 'sendmesse.php',
                    data: $("#messform").serialize(),
                    success: function(data) {
                        if(data == "true") {
                            $("#messform").fadeOut("fast", function(){
                                $(this).before("<strong>Success! Your feedback has been sent, thanks :)</strong>");
                                setTimeout($.fancybox.close(), 1000);
                                // $('.fancybox').close();
                                // $.fancybox.close();

                            });
                        }
                    }
                });
从关闭开始,所有工作都很好,尝试了各种变化而没有成功。 上面的超时给了我     Error: useless setTimeout call (missing quotes around argument?)

所以我试过了两个 setTimeout('$.fancybox.close()', 1000);setTimeout("$.fancybox.close()", 1000); 我得到以下错误TypeError: $ is undefined

......帮助!

3 个答案:

答案 0 :(得分:1)

尝试如下所示:

setTimeout(function(){ $.fancybox.close();}, 1000);

答案 1 :(得分:1)

setTimeout要求评估函数引用或字符串。在您的情况下,请尝试调用setTimeout,如:

setTimeout(function() { $.fancybox.close(); }, 1000);

答案 2 :(得分:0)

尝试创建一个名为“closeMyFancyBox”的简单函数,例如

function closeMyFancyBox() {
$.fancybox.close();
}

然后将该函数称为setTimeout('closeMyFancyBox', 1000);