作成から半年ばかり経ちました。
箱庭ノベルズII ver0.50です。
画像ロードを安定させました。
ストレージをAmazon S3にしてから、
画像ロードにほんの少し微妙に時間がかかるようになり、
フェードインするハズが、パッと出たりしてかっこ悪かったので、対策しました。
具体的には、imgタグにonLoadイベント(+onErrorイベント)をはっつけました。
ちなみにこのイベントはブラウザ間で差があるらしいです。
まあ箱庭ノベルズはIEとFirefoxだけなんですけど。
一応、prototype.jsのEvent.observeで実装。
IMG要素をcreateElementで作成し、各属性やonLoadイベントを付けて、appendChild。
で、最後にsrcを指定します。
でないと、onLoad指定する前にロードが完了してしまうことがあるらしいからです。
でもなんか気持ち悪いな・・
っていうか、この実装合ってるのかな・・
Event.observeで思い出したけど、4つ目の引数、
useCaptureの意味をよく忘れるので、メモ。
ここの説明が分かりやすい。
とみぞーノート:JavaScript addEventListener()
要するに普通、DOM構造の最下層から上ってくるとき(バブリングフェーズ)にイベントを呼び出すけど、useCaptureをtrueにしておくと、DOM構造を下って行くとき(キャプチャーフェーズ)に呼び出すよ、ということですかね。
click
これで、clickをクリックすると、buz→fooで呼ばれるのが、
divでuseCapture指定すると、
foo→buzで呼ばれるんだね。