zoukankan      html  css  js  c++  java
  • jQuery异步Deferred

    原文链接:http://www.ruanyifeng.com/blog/2011/08/a_detailed_explanation_of_jquery_deferred_object.html

    普通操作回调函数方法1

    var wait = function(dtd){
    
        var dtd = $.Deferred(); //在函数内部,新建一个Deferred对象
    
        var tasks = function(){
    
          alert("执行完毕!");
    
          dtd.resolve(); // 改变Deferred对象的执行状态
    
        };
    
        setTimeout(tasks,5000);
    
        return dtd.promise(); // 返回promise对象
    
      };
    
      $.when(wait())
    
      .done(function(){ alert("哈哈,成功了!"); })
    
      .fail(function(){ alert("出错啦!"); });
    

     普通操作回调函数方法2

    var wait = function(dtd){
    
        var tasks = function(){
    
          alert("执行完毕!");
    
          dtd.resolve(); // 改变Deferred对象的执行状态
    
        };
    
        setTimeout(tasks,5000);
    
        return dtd.promise();
    
      };
    
      $.Deferred(wait)
    
      .done(function(){ alert("哈哈,成功了!"); })
    
      .fail(function(){ alert("出错啦!"); });
    

      普通操作回调函数方法3

    var dtd = $.Deferred(); // 生成Deferred对象
    
      var wait = function(dtd){
    
        var tasks = function(){
    
          alert("执行完毕!");
    
          dtd.resolve(); // 改变Deferred对象的执行状态
    
        };
    
        setTimeout(tasks,5000);
    
      };
    
      dtd.promise(wait);
    
      wait.done(function(){ alert("哈哈,成功了!"); })
    
      .fail(function(){ alert("出错啦!"); });
    
      wait(dtd);
    
  • 相关阅读:
    Django model 常用方法记录
    程序员的注意事项
    硬件天使的使用
    你是否应该成为一名全栈工程师?
    web技术
    6个处理上面代码异味的重构方法(手法)
    git 命定
    ie console报错
    apache 省略index.php访问
    myisam和innodb的区别
  • 原文地址:https://www.cnblogs.com/dhui69/p/4031647.html
Copyright © 2011-2022 走看看