わしぶろーぐ
RECOMENDED
みんなの地図3 評価:3モンスターハンターポータブル 2nd G ルーキーズ・ガイド 2G (DVD付) 評価:5『モンスターハンター』プレイ日記 本日ももっと! 逆鱗日和 評価:4モンスターハンターポータブル 2nd G 評価:5バッテリーパック(2200mAh) PSP-2000シリーズ用バッテリーカバー(ピアノ・ブラック)付き 評価:3クリアケースポータブル2 クリスタル (PSP-2000専用) 評価:5
Edit

 カレンダーの背景をカラフルに

2007/05/19 (Sat) 01:13
カレンダー サイドバーに表示しているカレンダーの背景を、土曜はブルー、日曜・休日はオレンジにしてみました。(もうちょっと淡い色のが見やすいかも。)

 JavaScript を使って実装しています。ホントは休日を自動算出したかったんですが、とりあえず楽してベタで休日カレンダーを持っています。
 今のところ、2006 年と 2007 年の休日にしか対応していませんので、2008 年になったら追加が必要です。が、早々に自動算出のロジックを入れたいです。

 以下が休日かどうかを判定する JavaScript になります。
<script type="text/javascript">
holiday1 = [ "0101", "0211", "0429", "0503", "0504", "0505", "1103", "1123", "1223" ];
holiday2 = [
// 2006
"20060109",
"20060321",
"20060717",
"20060918",
"20060923",
"20061009",
"20061229",
"20061230",
"20061231",
"20060102",
// 2007
"20070108",
"20070321",
"20070716",
"20070917",
"20070923",
"20071008",
"20070212",
"20070430",
"20070924",
"20071224"
];
function isHoliday(year, month, day) {
if (day == "-") {
return false;
}

if (day.length > 2) {
// day = day.replace(/\<.+\>/, "");
day = day.replace(/<a href[^>]*>/g,"").replace(/<\/a>/g,"");
}
if (day.length == 1) {
day = "0" + day;
}

date = month + day;
for (i = 0; i < holiday1.length; i++) {
if (date == holiday1[i]) {
return true;
}
}

date = year + date;
for (i = 0; i < holiday2.length; i++) {
if (date == holiday2[i]) {
return true;
}
}
return false;
}
</script>


 以下がカレンダーの日付部分です。
<!--calender-->
<tr>
<script type="text/javascript">
if (isHoliday('<%now_year>', '<%now_month>', '<%calender_sun>')) {
document.write('<td class="calender_holi"><%calender_sun></td>\n');
}
else {
document.write('<td class="calender_sun"><%calender_sun></td>\n');
}

if (isHoliday('<%now_year>', '<%now_month>', '<%calender_mon>')) {
document.write('<td class="calender_holi"><%calender_mon></td>\n');
}
else {
document.write('<td><%calender_mon></td>\n');
}

if (isHoliday('<%now_year>', '<%now_month>', '<%calender_tue>')) {
document.write('<td class="calender_holi"><%calender_tue></td>\n');
}
else {
document.write('<td><%calender_tue></td>\n');
}

if (isHoliday('<%now_year>', '<%now_month>', '<%calender_wed>')) {
document.write('<td class="calender_holi"><%calender_wed></td>\n');
}
else {
document.write('<td><%calender_wed></td>\n');
}

if (isHoliday('<%now_year>', '<%now_month>', '<%calender_thu>')) {
document.write('<td class="calender_holi"><%calender_thu></td>\n');
}
else {
document.write('<td><%calender_thu></td>\n');
}

if (isHoliday('<%now_year>', '<%now_month>', '<%calender_fri>')) {
document.write('<td class="calender_holi"><%calender_fri></td>\n');
}
else {
document.write('<td><%calender_fri></td>\n');
}

if (isHoliday('<%now_year>', '<%now_month>', '<%calender_sat>')) {
document.write('<td class="calender_holi"><%calender_sat></td>\n');
}
else {
document.write('<td class="calender_sat"><%calender_sat></td>\n');
}
</script>
</tr>
<!--/calender-->

タグ
ネット | Trackback(0) | FC2ブックマーク このエントリーを含むはてなブックマークこのエントリーを含むはてなブックマーク この記事をクリップ!この記事をクリップ! あとで読む | エントリーの編集 | Topへ
Comment
コメントを書く Contribution of comment 









 管理者にだけ表示を許可する

ワード
Trackback
 スパム対策のため言及リンクのないトラックバックは受けないように設定されています。