あまびき開発日誌 #25
あまびき開発 25 日目。
bgiframe プラグインの導入
ヘルプ用のウィンドウを表示したときに、IE6 でのみ select メニューが透けて見えるのに気づいた。Tooltip プラグインと同様に bgiframe プラグインを適用することで対処する。
bgiframe プラグインは、「$('<div><p></p></div>').bgiframe();」とすると、「<div><iframe class="bgiframe"><p></p></iframe></div>」というように iframe 要素を挿入するものらしい。IE6 にのみ適用される。
ちなみにヘルプ用のウィンドウは、z-index などを指定することによって #wrapper 要素の上に重ねて表示している。
サーバーへの設置
実際にレンタルサーバー上に設置してみる。とくに問題なく動いた。
JavaScript の圧縮・難読化
JavaScript ファイルを圧縮・難読化した。
最初に /packer/ を試したが、差し替えてみるとエラーが出た。あとでわかったが、セミコロンが抜けていたのが原因だったようだ。JavaScript では改行も文の区切りとしてみなされるため、セミコロンなしでも改行があればエラーが出なかった。しかし圧縮する際に改行が取り除かれるため、セミコロンがなしではまずい箇所が出てくる、ということらしい(if ~ else 文のような場合はセミコロンなしでも)。
次に、高機能な JavaScript 圧縮ツール「jsjuicer」 - WebOS Goodies で紹介されていた jsjuicer というコマンドライン型の圧縮ツールを使ってみた。こちらは /packer/ で問題になった箇所(セミコロンなしで、改行が文の区切りになっている行)は、そのまま改行として残してくれるようだ(if ~ else 文についても同様)。
ただし、/packer/ の方が圧縮率も若干高いようだ(さらに Base エンコードを有効にすればもっと高くなる)が、上記の理由で当面は jsjuicer を使うことにする。
jsjuicer を使うときに気をつけたほうがいいかもしれないこと
- Windows 用のバイナリ(実行ファイル)は「A win32 version is available.」の「is available」のリンクからダウンロードする。
- VC8(Visual Studio C++ 2005) でコンパイルされているので、動作には VC8 のランタイムのインストールが必要。jsjuicer のホームページ(Windows 用のバイナリのすぐ右のリンク)からダウンロードできる。Microsoft のホームページ(Visual C++ 2005 SP1 再頒布可能パッケージ (x86))からもダウンロード可能。
この記事は、Amazon.co.jp 商品検索サイト「あまびき」の開発中につけていたメモを、ブログ用にまとめ直したものです。
スポンサード リンク
writeback message: Ready to post a comment.
- [Preview]ボタンをクリックすると、コメント内容をプレビューすることができます(JavaScript使用)。
- スパム対策としてリファラチェックを行っています。セキュリティソフトの設定でリファラを無効にしていると投稿できません。
- エントリの内容と無関係と思われるコメントやトラックバックは削除されます。
- 当ブログへの言及リンクがないトラックバックはブロックされます。



