とある日の妄想

- 雑記CGIてなおし -

何気ない日常にふと思いついた世迷言をつづるブログ

 

rss-feedRSSフィード

■携帯版はこちら
http://blog.toaruhi.net/m/

携帯サイトQRコード

ブログ内検索

キーワード

 

※検索エンジンで検索した情報が見当たらない場合にご利用ください。

新着記事

カテゴリ一覧

外部リンク

創作物の規制/単純所持規制に反対する請願署名市民有志

作者について

2003年03月08日(木)
雑記CGIてなおし
JavaScript
なんかデータ壊れるバグがあったらしい(壊れてた)。BBSのと同じ形式にした。デザインの変更とかはかなり簡単にできるようになったが、デザインを考えるのはめんどいのでとうぶんこのままで。

◆ JavaScriptの、ブラウザ間の微妙な動作の違いメモ

あたらしくわかったことなど。

(1)RGB値(document.getElementById(elementID).style.colorの値)

Mac版IE5.22    16進数形式
Mac版NS7      rgb(r,g,b)
Mac版Mozilla1.2.1 rgb(r, g, b)

NS7とMozillaは同じrgb形式だが、Mozillaはコンマの後にスペースが入る。16進数はsubstringなどで切り出してparseInt関数で10進数に変換できる。

(2)正規表現

上記のRGB値を判定しようとして

/rbg((.*?),(.*?),(.*?))/i

みたいな正規表現を使おうとするとNS7とMozilla1.2.1では期待どうりに動くけど、IE5.22(ともにMac版)ではエラーになる。

/rgb((.*)?,(.*)?,(.*)?)/i

とすると上記の3つのブラウザで動作した(ただしIEで記憶装置に正しい値をとりだせたかどうかは未確認)。どっちが正しいのかな?

(3)単位

Mac版のブラウザではなぜか、

_l="100%";
document.getElementById(elemID).style.left=_l+"px";

のような妙な値の設定が思ったように動作していた。つまり、単位が%の変数にさらにpxをつけても動作していた。WinIE(多分6)ではエラーになった。また、leftなどの値を得たときWinIEは単位つきで結果が得られるようだ。

(4)フォーカス

WinIE(6?)では、visibleでないフォームにフォーカスを当てようとするとエラーになる。MacIE5.22ではエラーにはならない。フォーカスは表示されているフォームの部品くらいにしておいた方が無難なようだ。

(5)document.URL

WinIE(多分6)はオフラインの時とオンラインのファイルの時で値の結果が違うみたいだ。オンライン上のファイルを見る時はクエリ文字列(?以降の文字列)を含めたURLが得られるが、オフラインの時は、クエリ文字列を除いたURLになっている。

セキュリティの問題かな〜?どうりでWinローカルでEVIL EARTHが動かなかったわけだ。どうもlocationオブジェクトのsearchプロパティ(?)がクエリ文字列のようなので、そっちの方を調べ中。escapeしないと#が含まれた場合おかしくなるのだが、escapeすると文字列がぶっ壊れる。なぜ。

(追記)
http://weapon.milkcafe.to/text/other/lecture004.html
どうやらやっぱりdocument.URLの働きがWinIEとMacIEで違うみたいだ…。とりあえずdocument.URLをlocation.hrefに置き換えることで解決(多分)。

◆ 画像変換

うちのMacでGIFをPNGに変換すると壊れることしばしば。なぜだろう…。プレビューの変換は透過色をそのまま透過できてないし。困ったもんだ。





トラックバックURL

コメントを投稿する

名前
コメント


Dragon Quest 6

龍が如く4

FF13

THIS IS IT

ときめきメモリアル4

鉄拳6