Team:Osaka

From 2013.igem.org

(Difference between revisions)
Line 6: Line 6:
<script>
<script>
-
// まず今が何年か調べる
+
 
 +
// 縺セ縺壻サ翫′菴募ケエ縺玖ェソ縺ケ繧�
var today = new Date();
var today = new Date();
var year = today.getYear();
var year = today.getYear();
if (year < 1900) { year += 1900; }
if (year < 1900) { year += 1900; }
-
// ローカル時間とグリニッジ標準時の差を分で表示
+
// 繝ュ繝シ繧ォ繝ォ譎る俣縺ィ繧ー繝ェ繝九ャ繧ク讓呎コ匁凾縺ョ蟾ョ繧貞�縺ァ陦ィ遉コ
var tz_offset = today.getTimezoneOffset();
var tz_offset = today.getTimezoneOffset();
-
// 米英のサマータイムの期間を格納
+
// 邀ウ闍ア縺ョ繧オ繝槭�繧ソ繧、繝�縺ョ譛滄俣繧呈�シ邏�
var pos_startUS  = GetDstStartUS(year);
var pos_startUS  = GetDstStartUS(year);
var pos_endUS    = GetDstEndUS(year);
var pos_endUS    = GetDstEndUS(year);
Line 20: Line 21:
var pos_endUK    = GetDstEndUK(year);
var pos_endUK    = GetDstEndUK(year);
-
// 各都市の時差を格納
+
// 蜷��蟶ゅ�譎ょキョ繧呈�シ邏�
var tz_ldn = 0 * 60;    // GMT +-0
var tz_ldn = 0 * 60;    // GMT +-0
var tz_tyo = 9 * 60;    // GMT  +9
var tz_tyo = 9 * 60;    // GMT  +9
Line 29: Line 30:
//
//
-
// ◆各都市の表示欄の色づけ
+
// 笳�推驛ス蟶ゅ�陦ィ遉コ谺��濶イ縺・縺�
//
//
cities = Array(4);
cities = Array(4);
Line 39: Line 40:
document.writeln("<style type=text/css>");
document.writeln("<style type=text/css>");
-
// いまの時刻を取得(たぶん1000ミリ秒単位)
+
// 縺�∪縺ョ譎ょ綾繧貞叙蠕暦シ医◆縺カ繧�1000繝溘Μ遘貞腰菴搾シ�
var now  = new Date();
var now  = new Date();
var n_t  = now.getTime();
var n_t  = now.getTime();
Line 53: Line 54:
     /*
     /*
-
     * ○時刻ごとの背景色設定
+
     * 笳区凾蛻サ縺斐→縺ョ閭梧勹濶イ險ュ螳�
-
     * ....... 6-16
+
     * 逋ス ....... 6-16
-
     * 薄い青 ... 16-18, 5-6
+
     * 阮�>髱� ... 16-18, 5-6
-
     * ....... 18-20, 4-5
+
     * 髱� ....... 18-20, 4-5
-
     * 濃い青 ... 20-4
+
     * 豼�>髱� ... 20-4
     */
     */
Line 75: Line 76:
-
// ◆メインルーチン
+
// 笳�Γ繧、繝ウ繝ォ繝シ繝√Φ
function update_watch() {
function update_watch() {
-
     // いまの時刻を取得(たぶん1000ミリ秒単位)
+
     // 縺�∪縺ョ譎ょ綾繧貞叙蠕暦シ医◆縺カ繧�1000繝溘Μ遘貞腰菴搾シ�
     var now  = new Date();
     var now  = new Date();
     var n_t  = now.getTime();
     var n_t  = now.getTime();
Line 88: Line 89:
     document.worldclock.internettime.value = internettime();
     document.worldclock.internettime.value = internettime();
-
     setTimeout('update_watch()', 999);        // 1000msec = 1sec(秒)
+
     setTimeout('update_watch()', 999);        // 1000msec = 1sec�育ァ抵シ�
}
}
-
// ◆米国版 DST 開始設定(4月第1日曜日2:00AM から 10月最終日曜日1:00AM まで)
+
// 笳�アウ蝗ス迚� DST 髢句ァ玖ィュ螳夲シ茨シ疲怦隨ャ�第律譖懈律2:00AM 縺九i 10譛域怙邨よ律譖懈律1:00AM 縺セ縺ァ��
-
// 引数arg_yearで指定された年のサマータイム開始時刻を return で返す
+
// 蠑墓焚arg_year縺ァ謖�ョ壹&繧後◆蟷エ縺ョ繧オ繝槭�繧ソ繧、繝�髢句ァ区凾蛻サ繧� return 縺ァ霑斐☆
function GetDstStartUS(arg_year) {
function GetDstStartUS(arg_year) {
-
     // 第2引数の3→4月 第3引数の1→1日 第4引数の2→2:00AM
+
     // 隨ャ2蠑墓焚縺ョ3竊�4譛医��隨ャ3蠑墓焚縺ョ1竊�1譌・縲�隨ャ4蠑墓焚縺ョ2竊�2:00AM
     var dst_start = new Date(arg_year, 3, 1, 2, 0, 0);
     var dst_start = new Date(arg_year, 3, 1, 2, 0, 0);
     for (var i = 1; i <= 7; i++) {
     for (var i = 1; i <= 7; i++) {
         dst_start.setDate(i);
         dst_start.setDate(i);
-
         if (0 == dst_start.getDay()) {    // 0は日曜日を意味する
+
         if (0 == dst_start.getDay()) {    // 0縺ッ譌・譖懈律繧呈э蜻ウ縺吶k
             break;
             break;
         }
         }
Line 106: Line 107:
}
}
-
// ◆米国版 DST 終了設定(4月第1日曜日2:00AM から 10月最終日曜日1:00AM まで)
+
// 笳�アウ蝗ス迚� DST 邨ゆコ�ィュ螳夲シ茨シ疲怦隨ャ�第律譖懈律2:00AM 縺九i 10譛域怙邨よ律譖懈律1:00AM 縺セ縺ァ��
-
// 引数arg_yearで指定された年のサマータイム終了時刻を return で返す
+
// 蠑墓焚arg_year縺ァ謖�ョ壹&繧後◆蟷エ縺ョ繧オ繝槭�繧ソ繧、繝�邨ゆコ�凾蛻サ繧� return 縺ァ霑斐☆
function GetDstEndUS(arg_year) {
function GetDstEndUS(arg_year) {
-
     // 第2引数の9→10月 第3引数の31→31日 第4引数の1→1:00AM
+
     // 隨ャ2蠑墓焚縺ョ9竊�10譛医��隨ャ3蠑墓焚縺ョ31竊�31譌・縲�隨ャ4蠑墓焚縺ョ1竊�1:00AM
     var dst_end = new Date(arg_year, 9, 31, 1, 0, 0);
     var dst_end = new Date(arg_year, 9, 31, 1, 0, 0);
     for (var i = 31; i > 24; i--) {
     for (var i = 31; i > 24; i--) {
         dst_end.setDate(i);
         dst_end.setDate(i);
-
         if (0 == dst_end.getDay()) {    // 0は日曜日を意味する
+
         if (0 == dst_end.getDay()) {    // 0縺ッ譌・譖懈律繧呈э蜻ウ縺吶k
             break;
             break;
         }
         }
Line 121: Line 122:
-
// ◆英国版 DST 開始設定(3月最終土曜日2:00AM から 10月最終土曜日2:00AM まで)
+
// 笳�恭蝗ス迚� DST 髢句ァ玖ィュ螳夲シ茨シ捺怦譛�邨ょ悄譖懈律2:00AM 縺九i 10譛域怙邨ょ悄譖懈律2:00AM 縺セ縺ァ��
-
// 引数arg_yearで指定された年のサマータイム開始時刻を return で返す
+
// 蠑墓焚arg_year縺ァ謖�ョ壹&繧後◆蟷エ縺ョ繧オ繝槭�繧ソ繧、繝�髢句ァ区凾蛻サ繧� return 縺ァ霑斐☆
function GetDstStartUK(arg_yearUK) {
function GetDstStartUK(arg_yearUK) {
-
     // 第2引数の2→3月 第3引数の31→31日 第4引数の2→2:00AM
+
     // 隨ャ2蠑墓焚縺ョ2竊�3譛医��隨ャ3蠑墓焚縺ョ31竊�31譌・縲�隨ャ4蠑墓焚縺ョ2竊�2:00AM
     var dst_startUK = new Date(arg_yearUK, 2, 31, 2, 0, 0);
     var dst_startUK = new Date(arg_yearUK, 2, 31, 2, 0, 0);
     for (var i = 31; i > 24; i--) {
     for (var i = 31; i > 24; i--) {
         dst_startUK.setDate(i);
         dst_startUK.setDate(i);
-
         if (6 == dst_startUK.getDay()) {    // 6は土曜日を意味する
+
         if (6 == dst_startUK.getDay()) {    // 6縺ッ蝨滓屆譌・繧呈э蜻ウ縺吶k
             break;
             break;
         }
         }
Line 135: Line 136:
}
}
-
// ◆英国版 DST 終了設定(3月最終土曜日2:00AM から 10月最終土曜日2:00AM まで)
+
// 笳�恭蝗ス迚� DST 邨ゆコ�ィュ螳夲シ茨シ捺怦譛�邨ょ悄譖懈律2:00AM 縺九i 10譛域怙邨ょ悄譖懈律2:00AM 縺セ縺ァ��
-
// 引数arg_yearで指定された年のサマータイム終了時刻を return で返す
+
// 蠑墓焚arg_year縺ァ謖�ョ壹&繧後◆蟷エ縺ョ繧オ繝槭�繧ソ繧、繝�邨ゆコ�凾蛻サ繧� return 縺ァ霑斐☆
function GetDstEndUK(arg_yearUK) {
function GetDstEndUK(arg_yearUK) {
-
     // 第2引数の9→10月 第3引数の31→31日 第4引数の2→2:00AM
+
     // 隨ャ2蠑墓焚縺ョ9竊�10譛医��隨ャ3蠑墓焚縺ョ31竊�31譌・縲�隨ャ4蠑墓焚縺ョ2竊�2:00AM
     var dst_endUK = new Date(arg_yearUK, 9, 31, 2, 0, 0);
     var dst_endUK = new Date(arg_yearUK, 9, 31, 2, 0, 0);
     for (var i = 31; i > 24; i--) {
     for (var i = 31; i > 24; i--) {
         dst_endUK.setDate(i);
         dst_endUK.setDate(i);
-
         if (6 == dst_endUK.getDay()) {    // 6は土曜日を意味する
+
         if (6 == dst_endUK.getDay()) {    // 6縺ッ蝨滓屆譌・繧呈э蜻ウ縺吶k
             break;
             break;
         }
         }
Line 150: Line 151:
-
// ◆表示・サマータイム処理
+
// 笳�。ィ遉コ繝サ繧オ繝槭�繧ソ繧、繝�蜃ヲ逅�
function printtime(now_time, timezone) {
function printtime(now_time, timezone) {
     var hour, min, sec;
     var hour, min, sec;
Line 156: Line 157:
     var pos_t = now_time + (tz_offset + timezone) * 60 * 1000;
     var pos_t = now_time + (tz_offset + timezone) * 60 * 1000;
-
     // サマータイム処理
+
     // 繧オ繝槭�繧ソ繧、繝�蜃ヲ逅�
     if (timezone == tz_ldn) {
     if (timezone == tz_ldn) {
-
         // ロンドン編
+
         // 繝ュ繝ウ繝峨Φ邱ィ
         if ((pos_startUK <= pos_t) && (pos_endUK > pos_t)) {
         if ((pos_startUK <= pos_t) && (pos_endUK > pos_t)) {
             pos_t += 60 * 60 * 1000;
             pos_t += 60 * 60 * 1000;
         }
         }
     } else if ( timezone == tz_lax || timezone == tz_nyc ) {
     } else if ( timezone == tz_lax || timezone == tz_nyc ) {
-
         // LA & NY
+
         // LA & NY 邱ィ
         if ((pos_startUS <= pos_t) && (pos_endUS > pos_t)) {
         if ((pos_startUS <= pos_t) && (pos_endUS > pos_t)) {
             pos_t += 60 * 60 * 1000;
             pos_t += 60 * 60 * 1000;
Line 175: Line 176:
     sec  = t.getSeconds();
     sec  = t.getSeconds();
-
     // 「XX時00分00秒」で、かつ、XX が「4,5,6,16,18,20」のうち
+
     // 縲傾X譎�00蛻�00遘偵�阪〒縲√°縺、縲々X 縺後��4,5,6,16,18,20縲阪�縺�■
-
     // いずれかであるときにページをリロード
+
     // 縺�★繧後°縺ァ縺ゅk縺ィ縺阪↓繝壹�繧ク繧偵Μ繝ュ繝シ繝�
-
     // この処理により時間ごとの背景色が自動的に変わる
+
     // 縺薙�蜃ヲ逅�↓繧医j譎る俣縺斐→縺ョ閭梧勹濶イ縺瑚�蜍慕噪縺ォ螟峨o繧�
     if ( (hour==4||hour==5||hour==6||hour==16||hour==18||hour==20) && min==0 && sec==0 ) {
     if ( (hour==4||hour==5||hour==6||hour==16||hour==18||hour==20) && min==0 && sec==0 ) {
         window.location.reload();
         window.location.reload();
Line 198: Line 199:
-
// ◆インターネットタイムの処理
+
// 笳�う繝ウ繧ソ繝シ繝阪ャ繝医ち繧、繝�縺ョ蜃ヲ逅�
function internettime() {
function internettime() {
     var c = new Date();
     var c = new Date();
Line 208: Line 209:
     var s = eval( gmt.slice(d+4,d+6) );
     var s = eval( gmt.slice(d+4,d+6) );
-
     // LONDON と BIEL(SWATCH本社所在地/PARISとtime zoneが同じ)の 時差は1時間(3600秒)
+
     // LONDON 縺ィ BIEL��WATCH譛ャ遉セ謇�蝨ィ蝨ー�襲ARIS縺ィtime zone縺悟酔縺假シ峨� 譎ょキョ縺ッ�第凾髢難シ�3600遘抵シ�
     var beat = (h * 3600 + m * 60 + s + 3600) / 86.4;
     var beat = (h * 3600 + m * 60 + s + 3600) / 86.4;
Line 220: Line 221:
     return "@" + zero + beat;
     return "@" + zero + beat;
}
}
 +
</script>
</script>
</head>
</head>

Revision as of 12:20, 25 September 2013

team team team team team team team team

logologo
LDN:   TYO:   LAX:   NYC:

INTERNET TIME: