<script>
//GET THE DATA
$.getJSON('https://api.tfl.gov.uk/line/mode/tube,overground,dlr,tflrail/status', function(data) {
var counter = 1;
console.log(data);
$.each(data, function(index,station) {
$.each(station.lineStatuses, function(index,value2) {
if (counter <= 16) {
if (station.name != 0) {
var stationName = station.name;
var stationStatus = value2.statusSeverityDescription;
var stationStatusReason = value2.reason;
$("#stationStatus").append(
$("<div>")
.addClass("row"));
$("#stationStatus").empty().append(
$("<div/>")
.addClass("stationName col-sm-6")
.append(stationName));
$("#stationStatus").append(
$("<div/>")
.addClass("stationStatus col-sm-6")
.append(stationStatus));
if (stationStatusReason != undefined) {
$("#stationStatus").append(
$("<div/>")
.addClass("stationStatusReason col-sm-12")
.append(stationStatusReason));
}
counter++;
}
}
});
});
});
</script>
getJSONを使用してデータを取得するためのコードをいくつか作成しました。遅延の追加 - getJSONとjquery
データを取得したら、ループして内容を表示しています。私の問題は、すべてのコンテンツを1回のヒットで表示できることですが、各ループの間に遅延を追加してニュースティッカーのように少し表示したいと思います。
私はほぼそこにいると思いますが、現在のフォームのコードは配列の最後の項目のみを表示しています。私がdevtoolsを使ってステップすれば、正しいことをしているようですが、自動的に遅延を追加する方法は分かりません。
setTimeoutなどを試してみますが、無視されますか?
あなたはあなたのコードを再フォーマットし、あなたのsetTimeoutの試みを含めることはできますか?私はここで再フォーマットを投稿しました。http://pastebin.com/Df3F2Y0C –
あなたの質問への迅速な答えとして、setTimeOutは 'in future'のタイムアウトを設定します。したがって、すべてのタイムアウトを同じ値に設定すると、同じ時間に処理してください。ですから、アップデートをずらしたい場合は、単にsetTimeOut *カウンタを増やしてください。 –