0

私は最近スレッドを開きました: Update partial with Ajax in Rails 3

実際、Wizard of Ogz のおかげで、すべてが機能しますが、XMLHTTPRequest がその間の各アイテムに対して送信されるため、互いに遠く離れた 2 つのアイテム間でマウスを移動すると非常に遅くなります...

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();
});

よろしくお願いいたします。

4

0 に答える 0