は、私は私をからかって続けて、この単純なスクリプトを持っていますそれは前の応答に、それは1行、2行、4行、8,16に行く..ブラウザ(と帯域幅)は狂って行く...jQueryの取得/ AJAX繰り返し要求が二重の応答をレンダリングするたびに
それはなぜですか?私は何が欠けていますか、どうすればその1行だけを前に付けることができますか?事前に
おかげ
アンドレアス
は、私は私をからかって続けて、この単純なスクリプトを持っていますそれは前の応答に、それは1行、2行、4行、8,16に行く..ブラウザ(と帯域幅)は狂って行く...jQueryの取得/ AJAX繰り返し要求が二重の応答をレンダリングするたびに
それはなぜですか?私は何が欠けていますか、どうすればその1行だけを前に付けることができますか?事前に
おかげ
アンドレアス
あなたが代わりにsetInterval
のsetTimeout
を使用する必要があります。
そして私はArnaudに同意します。この質問はあなたの問題の大きなリソースです:http://stackoverflow.com/questions/729921/settimeout-or-setinterval – Blazemonger
5秒後にAJAX応答が終了しなくても、SetIntervalが発生しても、新しいコンテンツをslideDownした後にsetTimeoutを使用することをお勧めしますか?
function populate(){
$.get('lib/log.php?action=update&latest='+latest, function(data) {
if(data.id!=latest){
latest = data.id;
$(data.news).hide().prependTo('#tabul').slideDown("slow");
}
setTimeout(populate,5000);
},"json")
};
populate();
私は何かを誤読しているかもしれませんが、実行するたびに別のsetIntervalを追加するPopulate関数があります。したがって、実行されるたびに間隔ごとにもう1回実行されます。
サーバーから戻ってくるJSON応答を投稿してください。 – bstakes