ヨーロッパのタイムゾーンで特定の時間帯と営業日のみにコンテンツを表示するための非常に簡単な解決策があるかどうか疑問に思っていましたか?
時間は毎日 (週末を除く) 午前 9 時から午後 5 時までで、その間に HTML コンテンツが表示されます。可能であれば、午後 5 時から午前 9 時までは別の HTML コンテンツ。
ヨーロッパのタイムゾーンで特定の時間帯と営業日のみにコンテンツを表示するための非常に簡単な解決策があるかどうか疑問に思っていましたか?
時間は毎日 (週末を除く) 午前 9 時から午後 5 時までで、その間に HTML コンテンツが表示されます。可能であれば、午後 5 時から午前 9 時までは別の HTML コンテンツ。
短いバージョンではnew Date()
、現在の日付/時刻を取得するために使用し、DOM 操作を使用してそのコンテンツを適切に追加/削除します。ページが読み込まれる間にコンテンツを変更したい場合は、window.setInterval を実行して常に更新することも必要になるでしょう。
Moment.js ライブラリ (http://momentjs.com/) をチェックしてみてください。これには、日付/時刻の操作を容易にする多くの関数があります。
これは、「5 を過ぎたかどうか」をチェックするだけの (Moment を使用しない) 簡単な例です。
window.setInterval(function() {
if (new Date().getHours() > 17) { // if it's after 5pm (17:00 military time)
$('#someContent').hide();
} else {
$('#someContent').show();
}
}, 1000 * 60) // this will run every minute
これで、他の必要な if チェックを追加する方法がわかると思います。
どうぞ!:)
<html>
<head>
<script type="text/javascript">
var date=new Date();
var year=date.getFullYear();
var month=date.getMonth();
var day=date.getDate(); // fixed
function SetDivContent() {
var div=document.getElementById('date_dependent');
if (year==2010 && month==11) { // fixed (the JavaScript months order is 0-11, not 1-12)
if (day>=3 && day<11) { // the following content will be displayed 12/03/2010, 12/04/2010, [...], 12/09/2010, 12/10/2010
div.innerHTML='content 1';
}
else if (day==11 || day==12) { // this one will be displayed 12/11/2010 and 12/12/2010
div.innerHTML='content 2';
}
else if (day>12) { // this one - 12/13/2010 and later, until the end of December
div.innerHTML='content 3';
}
}
else if (year==2011 && month>=0) div.innerHTML='content 3'; // OPTIONAL - just to ensure that content 3 is displayed even after December.
}
</script>
</head>
<body onload="SetDivContent()">
<div id="date_dependent"></div>
</body>
</html>
10 年 11 月 30 日 22:16 に回答
サイ