リード開発メモ

大阪のソフトウェア会社です。 技術的な事柄についてのメモとしてブログを始めます。

2013年05月

書きかけのブログ記事が消えてしまわないために

ブラウザでブログ記事を書いているとき、たまに間違ってブラウザの「戻る」のショートカットキー(Backspace もしくは Alt+[←])を押してしまうことがある。そうすると書きかけの記事はすべて消えてしまう。気力が残っていれば、内容を思い出しながらなんとかもう一度書いたりするが、そうでないこともある。

たいていのブログサイトには下書きを保存する機能がついているが、通常は、また今度続きを書こうと思ったときに利用するくらいのものだろう。

そこで、なんとか対策はないものかと探してみたところ、Lararus という FireFox のアドインを見つけた。
これはブラウザの入力欄に書き込んだ内容を、常に保存しておいてくれるというもの。何らかのアクシデントで書き込んだ内容を消してしまっても、後でその内容を復活させることができる。
インストールした初日からすでに一度助けられた。すばらしい。

https://addons.mozilla.org/ja/firefox/addon/lazarus-form-recovery/


ちなみに Chrome 版もある。

https://chrome.google.com/webstore/detail/lazarus-form-recovery/loljledaigphbcpfhfmgopdkppkifgno

IE8 で JavaScript エラー 「'console' は宣言されていません。」

IE8 であるサイトを見ていたところ、JavaScript で以下のエラーが出た。


メッセージ: 'console' は宣言されていません。


今までは JavaScript のデバッグといてば、alert を仕込んでおいて、いちいち動作を止めながら値を確認する。。。ということを延々とやっていたわけだが、最近のブラウザなら開発者ツールが付属しており、console オブジェクトも用意され、処理を止めることなくデバッグできるようになった。

しかし、古いブラウザでは console オブジェクトがサポートされていないため、console オブジェクトを使っていると、上記のようなエラーが発生してしまう。

IE8 の場合はどうかといえば、通常は console オブジェクトはサポートされていないのだが、開発者ツールを立ち上げているときは console オブジェクトがサポートされている状態のようだ。ややこしい。

一括でフォルダ毎に圧縮する

あるプログラムはファイルを大量に吐き出すため、日付ごとのフォルダに保存するようにしている。
1日あたりのファイル数は 5000 くらいで、合計サイズは 340~400MB くらい。
大容量の HDD とはいえ、そろそろなんとかしなくては。。。ということで、一括でフォルダ毎に圧縮できるようなツールはないものかと探していたら、愛用している explzh にそのような機能がついていた。

15年くらい使っているのに知らんかった。。。
以下のチェックボックスがそれ。

explzh-settings.jpg
続きを読む

PHP pChart 2 で株価チャートを描いてみた

pChart を使って株価チャートを描いてみた。
ただし、pChart そのままでは気に入らない点があったので、すこし手を入れている。

chart_n225.png

IE8 オブジェクトでサポートされていないプロパティまたはメソッドです

pChart 2 には Sandbox があり、ブラウザ上でグラフの設定を行い、ブラウザ上に結果を画像として表示し、ソースコードを吐き出させることができる。

しかしこの機能、IE8 だと正常に動かない。Render picture ボタンを押すと JavaScript のエラーが出てしまう。エラー内容は「 オブジェクトでサポートされていないプロパティまたはメソッドです。」というもの。

どうやら、HTML 要素の id と JavaScript の変数名が同じことが原因。 IE では id を付けた HTML 要素は window グローバル変数に追加されるため、変数名がバッティングする、ということらしい。

pChart の function.js には次のようなコードがあり、アウトとなる。

g_width   = document.getElementById("g_width").value;


pChart 2 の Sandbox は Chrome や FireFox では問題なく動く。
IE9 以降では未確認。

アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

livedoor 天気