各个元素的Ajax加载器

时间:2012-09-05 07:54:56

标签: javascript ajax jquery

实际上我试图在我的应用程序中放置一个ajax加载器。我试过这个

$(document).ajaxStart(function(){ 
  $('#ajaxBusy').show(); 
  }).ajaxStop(function(){ 
  $('#ajaxBusy').hide();
});

这很好用。但问题是每当我点击一个启动ajax请求的元素时,ajax加载器(gif图像)就会显示在一个地方。但我不希望我希望加载器应分别显示在每个元素附近,只在该元素附近点击。

所以我试过这个,

$('.follow_count').live('click', function(){
  $(document).ajaxStart(function(){ 
   $('#ajaxBusy').show(); 
   }).ajaxStop(function(){ 
   $('#ajaxBusy').hide();
  });
});

其中.follow_count(这是ajaxelement之一)是一个div元素。在这里我想要点击.follow_count元素时,ajax加载器应显示在该元素附近。

任何人都可以帮助我摆脱这个..

1 个答案:

答案 0 :(得分:0)

如果您从id更改为class,可能会有效:

$('.follow_count').live('click', function(){
  $(this).ajaxStart(function(){ 
   $(this).find('.ajaxbusy').show(); 
   }).ajaxStop(function(){ 
   $(this).find('.ajaxbusy').show(); 
  });
});

ajaxBusy必须是一个不是id的班级,如果你重复它的话!

Here就是一个小例子。