我最近在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();
});
提前感谢您的帮助。