NN4.5の背景色変更

[上に] [前に] [次に]
みんこ 1999/10/21(木) 14:42:30
アクセスする時間によって背景色を変えようとJavaScript作りました。
が、MacNN4.5で 色が変わりませんでした。(IE3、NN3、WinIE4はOK)
間違ったかな?と思ってよそのサンプル等表示しても
http://www.bekkoame.or.jp/~hamba/webimage/java/back/backcolor0-01.html
やっぱりこれも色が変わりませんでした。
NNのバグかな?と思って調べても
http://www.shiojiri.ne.jp/~openspc/JavaScript/bug/ns4.txt
には出ていませんでした。

ちなみにスクリプトはこれです。

var today=new Date();
var hh=today.getHours();
var x;
//背景色変更
if(hh>=0 && hh<1){x="#000066"}
if(hh>=1 && hh<3){x="#333399"}
if(hh>=3 && hh<6){x="#996699"}
if(hh>=6 && hh<8){x="#cc99cc"}
if(hh>=8 && hh<9){x="#ffcccc"}
if(hh>=9 && hh<11){x="#ffff99"}
if(hh>=11 && hh<12){x="#ffff33"}
if(hh>=12 && hh<13){x="#ffcc00"}
if(hh>=13 && hh<14){x="#ffcc66"}
if(hh>=14 && hh<16){x="#ffcc99"}
if(hh>=16 && hh<18){x="#cc99cc"}
if(hh>=18 && hh<19){x="#6699ff"}
if(hh>=19 && hh<21){x="#3366ff"}
if(hh>=21 && hh<23){x="#0033cc"}
if(hh>=23 && hh<24){x="#000099"}
document.bgColor=x;

何か御存知でしたら教えて下さい。
#私のNN4.5は他にも妙な挙動が時々あるので私だけかも...。

うぐいす 1999/10/21(木) 16:16:22
すみません。解答じゃありません。

サンプルページを見させていただきましたが、
WinNTのNN4.6でも色は変わっていませんでした。
ネスケでは使えない命令?とも思ったのですが、
NN3では見れるようですね。

無責任官庁 1999/10/21(木) 16:25:54
スクリプトはHEAD内に書いてますか?
BODYタグよりも後ろに書いてみてはどうでしょうか?
うちのはこれで動きましたが・・・
</body>の後ろでも平気っぽいです。

みんこ 1999/10/21(木) 16:44:47
>BODYタグよりも後ろに書いてみてはどうでしょうか?

やってみたんですが、最初一瞬だけ色がつきますが
読み込み後に一旦再レイアウトされるとやっぱり色が抜けます。
ううう。

たこすけ 1999/10/21(木) 18:09:03
<BODY onLoad="document.bgColor=x" onResize="document.bgColor=x">
なんて書いても駄目ですかね?

あとxという変数名も一応やめといた方がいいかも・・・
(LAYERの座標とかで使ったりするから)

みんこ 1999/10/22(金) 10:42:13
> <BODY onLoad="document.bgColor=x" onResize="document.bgColor=x">

これをbodyの後に書いたら行けました。(でも一旦色が消えるのでやなかんじー)
壁紙なら同じスクリプトでできるのになあ。ちなみにbodyタグごと書き出しても
ダメでした。リサイズかかると無効になるみたいです。

ところでNNのあまりの挙動不審ぶりに再インストールしましたら
http://www.bekkoame.or.jp/~hamba/webimage/java/back/backcolor0-01.html
(これはこれでどこで変数を宣言しているのか謎なソースですが)
がちゃんと表示されました。ありゃ?でもうぐいすさんの環境はダメなんだったら
使えないですね。

>あとxという変数名も一応やめといた方がいいかも・・・
直接関係なかったみたいですが直しました〜。

これってバグなんですかね、やっぱ。NNは背景色に関するバグが多い気が。

たこすけ 1999/10/22(金) 13:08:31
ちょっと↓コレを試してもらえます?(「&」を半角に直して)
---------------------------------------------
<SCRIPT>
today = new Date();
hh = today.getHours();
bgc = new Array(
"#000066","#333399","#333399",
"#996699","#996699","#996699",
"#cc99cc","#cc99cc","#ffcccc",
"#ffff99","#ffff99","#ffff33",
"#ffcc00","#ffcc66","#ffcc99",
"#ffcc99","#cc99cc","#cc99cc",
"#6699ff","#3366ff","#3366ff",
"#0033cc","#0033cc","#000099");
document.bgColor = bgc[hh]; //← IE用
</SCRIPT>
<BODY bgcolor="&{bgc[hh]};"><!-- ネスケ用 -->
---------------------------------------------
../199909/99090182.htm
↑を読んで初めて知ったんですけど、なかなか便利です。

あと、if文が多いのも気になったので、一応使わないように
してみましたけど、多分あまり関係ないです。(笑)

> やっぱ。NNは背景色に関するバグが多い気が。
リサイズもそうですけど、再描画する時に
なにか問題があるような気がしなくもないような・・・。

みんこ 1999/10/22(金) 13:39:54
>ちょっと↓コレを試してもらえます?

やってみた結果、NNだとちゃんと出たので「♪♪♪」とIE3で出してみたら背景色が、
「#009900」
なんてことに。どこから来たのかこの数字は。
一応getHoursをDayとかSecondに変えてみたのですがやっぱり
「#009900」.......何で緑?

最終手段はブラウザチェックですかね。
もしくは.....ベタ1色の壁紙...........。

うぐいす 1999/10/22(金) 14:07:43
>ありゃ?でもうぐいすさんの環境はダメなんだったら
>使えないですね。
私も再インストールかな?
今、NN4.6とNN4.05とNN4.01とIE5.0が入ってて、
IEが壊れてしまったから、ブラウザがおかしくなってるかも・・・。

そうそう、たこすけさんのソースではちゃんと表示されました。
前と変わらず、WinNTのNN4.6です。

たこすけ 1999/10/22(金) 14:20:44
> 「#009900」.......何で緑?
あらら。IEだと<BODY bgcolor="&{bgc[hh]};"> を
強引に解釈して緑にするみたいです。
それでもIE4とIE5では document.bgColor = bgc[hh];
の方が優先されていたので、気にしなかったんですが
確かにIE3だとWin版でも駄目でした。

> 最終手段はブラウザチェックですかね。
<BODY bgcolor="&{bgc[hh]};" onLoad="document.bgColor=bgc[hh]">
としたら、Win版のIE3では大丈夫でしたけど、MAC版ではどうでしょうか?
(駄目ならチェックだな・・・うひゃーめんどくさい)

みんこ 1999/10/22(金) 14:43:35
[[解決]]
>MAC版ではどうでしょうか?

「runtime error 操作が必要です」
....だ、そうです。MacIE3はWinのよりましだと思ってたのに...。
よく考えたら背景色変更に伴ってテキストやリンク色変更ってのもあったので
(これもonLoadとかいるらしい)ページ内での時間分けは諦めました。玉砕。
時間別のページ作って飛ばします。

皆様どうもありがとうございました。

[上に] [前に] [次に]