开发者社区 问答 正文

jQuery.ajax(...).done如何添加hook

我想修改done方法为如下形式

jQuery.ajax(...).done(function(data){
 
hook1;
 
do something;
 
hook2;
 
});
也就是定义好hook以后,只要我写:

$.ajax(...).done(function(data){
 
do something;
 
});

就会自动在do something之前调用hook1,之后调用hook2。
该如何实现?

展开
收起
a123456678 2016-07-06 10:30:36 2127 分享 版权
1 条回答
写回答
取消 提交回答
  • 可以用回调实现,如下:

    function hook1(){
    
    alert('before');
    
    }   
     
    function hook2(){
        alert('after');
    }
     
    function Test(){}
     
    Test.prototype.callback=function(func){
        hook1();
        if(func instanceof Function){
            func();
        }
        hook2();
    };
     
    $.ajax(...).done(function(data){
     
      
        new Test().callback(new function(){
            alert('do something');
     
        });
     
      
     
    });
    2019-07-17 19:51:54
    赞同 展开评论
问答分类:
问答标签:
问答地址: