HTML ページがあり、Java スクリプト関数からいくつかの値を出力したいと考えています。値は頻繁に変更する必要があります。私の問題は、「継続的に」変更するのではなく (または、少なくともコードで値の変更が必要な場合)、Java スクリプト コード全体の実行が終了したときにのみ変更されることです。Chrome を使用していますが、別のブラウザーではテストしていません。
問題を再現する最小限の例を次に示します。
<head>
<title>Test Continuous Output</title>
</head>
<body>
<p id="data"></p>
<script>
function onClick() {
for(var i =0;i<100;i++) {
document.getElementById("data").innerHTML = i;
for(var j = 0; j < 1000; j++) {
console.log("j="+j);
}
}
}
</script>
<button onclick = "onClick()">test</button>
</body>
編集: @Alytrem の提案の下で setTimeout を使用して、この問題を修正するコードをここに投稿します。
<head>
<title>Test Continuous Output</title>
</head>
<body>
<p id="data"></p>
<script>
var n=0;
function log() {
document.getElementById("data").innerHTML = n;
n=n+1;
if(n<100) {
setTimeout(log,100);
}
}
function onClick() {
log();
}
</script>
<button onclick = "onClick()">test</button>
</body>