Javascript 使用fancybox运行$.ajax,无法关闭成功窗口

Javascript 使用fancybox运行$.ajax,无法关闭成功窗口,javascript,jquery,ajax,fancybox,Javascript,Jquery,Ajax,Fancybox,我目前正在为一个网站制作一个CMS,其中一个功能是用户可以动态裁剪一个图像,他们在fancybox实例中执行此操作,所有细节都通过ajax提供给控制器,成功裁剪图像后,我希望自动关闭fancybox实例,但是我似乎无法关闭窗口,下面是我的代码 $("#crop").submit(function(e){ $.ajax({ type : "POST", dataType: "json", url : $(this).

我目前正在为一个网站制作一个CMS,其中一个功能是用户可以动态裁剪一个图像,他们在fancybox实例中执行此操作,所有细节都通过ajax提供给控制器,成功裁剪图像后,我希望自动关闭fancybox实例,但是我似乎无法关闭窗口,下面是我的代码

$("#crop").submit(function(e){
    $.ajax({
        type    :   "POST",
        dataType:   "json",
        url     :   $(this).attr('action'),
        data    :   "x="+$("#x").val()+"&y="+$("#y").val()+"&x2="+$("#x2").val()+"&y2="+$("#y2").val()+"&w="+$("#w").val()+"&h="+$("#h").val()+"&isAjax=1&crop_image=Crop",
        success:function(json) {
            if(json.message == "Image Cropped") {
                $.fn.fancybox.close();
            }
        }
    });
    e.preventDefault();
});
运行此代码可以正常工作,直到我在
$.fancybox.close()
中遇到此错误

$.fn.fancybox.close不是函数

如何在ajax请求成功时关闭fancybox?

我很确定它是:

$.fancybox.close();
我很确定:

$.fancybox.close();

添加了
$.fancybox.close()
而不是
$.fn.fancybox.close()
没有错误,但仍然有一个fancybox放在我的内容上:(如果(json.message==“Image crapped”){计算为真,你能在控制台/通过警报输出
json.message
的值吗?
console.log(json.message)
返回裁剪后的图像,如果
中的返回意味着它必须为真。请阅读常见问题解答“是否可以从iframe调用脚本?”,“否”。因为ajax请求发生在iFrame中,这是否意味着我无法从ajax回调中关闭它。啊,你在帖子中没有提到任何关于iFrame的内容。添加了
$.fancybox.close();
而不是
$.fn.fancybox.close()
没有错误,但仍然是一个放在我的内容上方的fancybox:(这个条件
如果(json.message==“Image crapped”){
计算为true?您可以在控制台中/通过警报输出
json.message
的值吗?
console.log(json.message)
返回图像裁剪,如果
IF
这意味着它必须为true。只需阅读常见问题解答“脚本可以从iframe调用吗?”,“否”。因为ajax请求发生在iFrame中,这是否意味着我无法通过ajax回调关闭它。啊,你在文章中没有提到任何关于iFrame的内容。