EF-S60mm F2.8 マクロを購入。これで壁など寄って撮れる。
寄るとピントが薄いので被写界深度を考えたり、ミラーショックのことも意識しないと。
動画を教えてもらって、iTSでアルバムを購入。
電子音楽系がバンドで演奏してるのかっこいいなー
サイトは写真が素敵。
画像を非表示にさせてから、画像の読み込み完了後にエフェクトをかけたかったのでそのメモ。jQuery使用。
すべての img
に対して、それぞれ読み込みを待ってからフェードさせてみる。
$(function(){
$('img').each(function(i) {
var self = this;
$(self).hide();
$(self).load(function(){
$(self).fadeIn('slow');
});
});
});
これだと
hide()
で画像が display:none;
になり幅・高さがなくなる。親ブロックのサイズが変わったり。fedeIn()
の処理が同時に起きて重い使い道によるけど、いったん同サイズの div
で囲むとか、端からそれぞれアニメーションの終了を待って順番に表示させるとか、実際に使うには工夫が必要そう。
CSS にもデータURIスキームで画像を埋め込めるようなので、以下のサイトを参考にしながらやってみた。対応ブラウザはきちんと確認していません。
この画像でやってみる。
base64 エンコードをするのには base64
コマンドを使用
$ base64 -e bg.gif R0lGODlhCgAKAIAAAAAAAP///yH5BAAAAAAALAAAAAAKAAoAAAIRhB2ZB7rnAovTVcUavpJn yxUAOw==
実行結果から改行・スペースを取り除いてCSSに入れる。
background: #ffffff url("data:image/gif;base64, R0lGODlhCgAKAIAAAAAAAP///yH5BAAAAAAALAAAAAAKAAoAAAIRhB2ZB7rnAovTVcUavpJnyxUAOw==") 0 0 repeat;
画像ファイルをアップする場所が無い、html以外を含められないなど、使い道は限られそうだけど。
CakePHP で app_controller.php の beforeFilter でコンポーネントを使った共通する処理をしようとしてハマった。
エラーはこんな感じ
Fatal error: Call to a member function hoge_function() on a non-object in ...
独自のコンポーネントを作成する :: コンポーネント :: CakePHPによる開発 :: マニュアル :: 1.3コレクション :: The Cookbook
initialize メソッドはコントローラの beforeFilter() メソッドの前に呼び出され、startup() はコントローラの beforeFilter() メソッドの後に呼び出されます。
ということで、beforeFilter() の時点ではコンポーネントの startup() は実行されていない。
ほかのやり方がありそうだけど、とりあえず処理をコントローラのアクションに移して対処。