js setTimeout

来源:互联网 发布:星星知我心1983 编辑:程序博客网 时间:2024/06/15 22:36

每隔1秒调用远程的url 去刷新页面的值。

  setTimeout(function(){                 $.get('远程url 地址',function(){                          '执行回调函数';                          })                   },1*1000) ;

结果:
1 假如 调用远程服务$.get () 需要10秒,则等服务端返回结果 客户端已经开了10个线程。
2 即使服务端的网络断开之后,客户端也会每隔一秒中去调用服务端。即页面存储的还是历史数据。
如果自己的项目是想等服务端执行完成之后再去刷新数据的话则修改:

  var  getUrlData = function(){       $.get('远程url 地址',function(){                 setTimeout(getUrlData,1000);                   })   }

结果:
当服务端的网络断开的话,setTimeout 不会继续执行。
有一种需求是调用服务端成功之后再刷新,并且服务端的网络断开页面显示网络断开,等网络服务都好时继续刷新,这时:

  var  getUrlData = function(){      $.ajax({        async:false,  //同步等待服务端返回的结果        url :'',        cache :false,        success :function(){},        error :function(){}      });  } setTimeout(getUrlData,1*1000) ;
0 0