ボタンをウェブページから12時間隠すにはどうすればよいですか?これは今まで私が持っているものです:HTML要素を20時から08時まで非表示にするGMT
var now = new Date();
var millisTill20 = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 20, 0, 0, 0) - now;
if (millisTill20 < 0) {
millisTill20 += 86400000;
}
console.log('millisTill20 ' + millisTill20);
setTimeout(function() {
$("#button_online").hide();
}, millisTill20);
20時にスクリプトが実行されますが、要素は非表示になりますが、ページを更新するとボタンが戻ってきます。
別の問題が発生しました。ユーザーが20:01に私のウェブサイトにアクセスすると、ボタンが表示されますが、どうすればこの問題を解決できますか? これは私がクライアント側スクリプトを使用しているが、Salesforceを使用しているためにサーバー側を使用できないためです。
現在の時刻を確認し、それを表示するためにJSを使用し、その後、CSSを使用して、デフォルトで要素を非表示にします。それ以降は定期的に再チェックしてください。 – Blazemonger
より良い解決策は、1秒または10秒または60秒(任意の解像度に応じて)とその時間を確認する内部にsetTimeoutすることです – slebetman
決定されたユーザーは、いつでも手動で要素を強制的に表示することができます。サーバーサイドのコードだけが完全にそれを防ぐことができます。 – Blazemonger