現在、私は1分ごとにオートリフレッシュ機能を備えたウェブページを構築しています。また、私のウェブページには、オートリフレッシュをオン/オフするかどうかをユーザーが選択できるオートリフレッシュオン/オフボタンが含まれています。デフォルトでは、ウェブページは自動的に最新の状態に更新されます。Javascript:ボタンによるオートリフレッシュ機能の停止
ただし、ユーザーが機能をオンにしたくない場合は、オートリフレッシュ機能をオフにすることをユーザーに許可します。私は答えを検索しようとしたといくつかの人々はそれがclearTimeout(timeout)
関数を使用することができると述べた。したがって、私はオフボタンをクリックしてオートリフレッシュ機能を停止する方法を知りたいですか? JavascriptにclearTimeout(timeout)
コードを追加していますか?ありがとうございました。
オートリフレッシュ機能のためのコード:
<body onload="setInterval(reloadPage, 5000);">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
function reloadPage(){
var refreshEnabled = document.getElementById('auto-refresh-checkbox');
if(refreshEnabled.checked) {
window.location.reload(60000);
}
}
</script>
/OFFボタンをオンにするコード:
<div class="page-header-actions" data-toggle="buttons" role="group">
<label class="btn btn-outline btn-primary active">
<input id="auto-refresh-checkbox" type="radio" name="options" autocomplete="off" value="autorefreshon" checked />
<i class="icon wb-check text-active" aria-hidden="true"></i> Auto Refresh ON
</label>
<label class="btn btn-outline btn-primary">
<input type="radio" name="options" autocomplete="off" value="autorefreshoff" />
<i class="icon wb-check text-active" aria-hidden="true"></i> Auto Refresh OFF
</label>
</div>
はい、しかし、 'setTimeout'を使うと' clearTimeout'でキャンセルできます。 'setInterval'を使うと' clearInterval'を使ってキャンセルする必要があります。ラジオにリスナーを追加することで、ユーザーがラジオを選択して間隔をキャンセルするか、ラジオの値に応じて再度開始するようにする必要があります。さらに援助が必要な場合は、スニペットでテストを提供してください。 –