在Rails 3中使用Ajax更新部分速度太慢

时间:2012-04-10 09:48:15

标签: ruby-on-rails ajax ruby-on-rails-3 performance partials

我最近在Update partial with Ajax in Rails 3

打开了一个帖子

实际上,感谢Wizard of Ogz,一切正常但是当我在两个远离彼此的项目之间移动鼠标时它非常慢,因为XMLHTTPRequest是为每个项目发送的......

我想如果mouseenter和mouseleave之间的间隔低于阈值但是没有帮助,就会中止请求。

我还尝试添加一个计时器来触发接近“过期时间”的请求,这样如果相同的间隔太小但没有再次成功,请求就没有时间来回答。

以下是代码:

var timeStart, timeEnd;
$("div.show_item").mouseenter(function(event){
    timeStart = (new Date()).getTime();
    var id = $(this).attr('data');
    var url = "/item/list?id="+id;
    var data = $(this).serialize();
    setTimeout(xhr = $.post(url, function(response_data){$("#item_details").html(response_data)}),290);
    return false;
}).mouseleave(function(event){
    timeEnd = (new Date()).getTime();
    if(timeEnd - timeStart < 300)
        xhr.abort();
});

提前感谢您的帮助。

0 个答案:

没有答案