Storage近年は大容量化や同期機能など、充実したサービスを提供しているオンラインストレージ。仕事でも便利に使わせてもらっています。そんなストレージの中で、使い勝手の良さそうなサービスを10点あげてみました。Mac用デスクトップアプリはなしDropboxとSugarSyncは国内でも以前からサービスを提供していて、利用されている方も多いのではないでしょうか。PC用、スホ用アプリもこなれていて、使いやすいです。Boxは海外では老舗の会社で、Webアプリケーションは良くできているように思います。1ファイルの容量制限が250MBというのがやや残念ですが・・・。Copyはまだ新しいサービスで、無料会員の容量も15GBと大きいです。紹介するごとに5GB増えていくのも嬉しいです。Bitcasaは無料会員だと10GBですが、有料会員では容量無制限という魅力的なサービスです。自分の環境では、デバイス間のデータの同期用にDropboxを、仕事でファイルを渡す際にはSugarSyncを、バックアップ目的にBitcasaを利用しています。無料で使えるオンラインストレージの活用方法を考えてみるもの、なかなか楽しい作業です。ウィンドウサイズに合わせて画像を全面に表示。LabsJavaScriptjQueryjQueryを使って、ウィンドウサイズに合わせて画像を拡大縮小し、全面に表示する方法です。画像の縦横比率は保ったままに、ウィンドウの全面を覆うように拡大縮小を行っています。ウィンドウのリサイズの際には、画像もアニメーションでリサイズします。サンプルはこちらHTMLファイル内では、画像全面表示のための関数の実行と、ウィンドウリサイズ時の処理を記述しています。--></body></html>外部JavaScriptファイル「functions.js」に、画像全面表示のための関数を記述しています。ウィンドウを覆い尽くすように画像サイズを拡大縮小して、センター表示にしています。easing:"easeOutQuart"});}画像表示のためのCSSの箇所は次のようになっています。relative;}フォーム項目の内容が変更された時のjQueryのイベントまとめ。LabsFormJavaScriptjQueryテキストフィールドや、ラジオボタンなど、フォーム項目の内容が変更された時に処理を行うための、jQueryによるイベントのまとめです。サンプルはこちらフォームは次のように、テキストフィールド、テキストエリア、ラジオボタン、チェックボックス、セレクトボックスを作成します。/></form>上記のフォーム項目ごとに、内容が変更された時にイベントを取得して、別のDIVタグ内に変更内容を表示するようにしています。span").text($(this).val());});});テキストエリア、テキストボックスは、キーボードが押された時に、ラジオボタン、セレクボトックスは選択が変更された時に、チェックボックスはいずれかのチェックボックスが押された時にそれぞれイベントを取得しています。変更内容の確認のための各DIVは、次のように記述しています。id="value-select">セレクトボックスの値:<span></span></div>DropboxでMAMP環境を同期。StorageSyncDropboxで複数のMacにMAMP環境を同期する方法です。今回はMAMP通常版ではなく、PRO版を利用しています。(通常版とは管理画面と、MySQLのデータ格納先が変わります)MAMP環境で同期を行いたいディレクトリは、ApatcheのドキュメントディレクトリとMySQLのデータを格納しているディレクトリの2点です。Apatcheのドキュメントを格納している「htdocs」ディレクトリをDropboxで同期させるには、MAMPの管理画面からディレクトリを変更することができます。MySQLのデータを格納しているディレクトリは、PRO版ではルートのライブラリフォルダ内に保存されています。PRO/db/mysqlこの「mysql」ディレクトリをDropbox内に移動して、代わりに(Dropboxに移動したディレクトリの)シンボリックリンクをこちらに配置します。シンボリックリンクの作成には「MacDropAny」が便利です。以上にて、Dropboxで複数のMacにMAMP環境を同期することが可能です。Dropboxで同期する上で1点気をつけたいのは、MySQLがデータベース管理のために「ibdata1」というファイルを上記の「mysql」ディレクトリに作成するのですが、これはデータベースを作成するごとにファイルサイズが大きくなり、後にデータベースを削除してもファイルサイズは小さくなることはありません。使っているうちに、すぐに数百メガにまで大きくなり、これをファイルの更新のたびにDropboxで同期するには、やや問題があります。その対策として、「ibdata1」ファイルにはデータベースごとのデータを追加せず個別にファイルを作成するために、MySQLの環境設定ファイルで次の1行を追加します。my.cnf」より編集が可能です。これで、作成するデータベースごとにディレクトリが作成されて、さらに各テーブルごとのファイルとして保存してくれるので、必要最小限の容量のみをDropboxで快適に同期が行えます。PHPで祝日/イベント対応のカレンダーを作成。LabsCakePHPPHPPHPではPEARなどのライブラリを利用すると簡単にカレンダーを作成できますが、CakePHPなどフレームワークをベースに開発している場合、あまり他のライブラリを利用したくないこともあります。祝日情報を含むイベント情報を簡単に組み込めるカレンダーとして、シンプルなカレンダーを作成してみました。サンプルはこちら機能としては指定月のカレンダーを生成し、イベント情報を配列として渡すことで、該当日にイベント内容を表示することができます。祝日情報の取得の関数「getHolidays()」については、「Googleカレンダーから祝日情報を取得。$calendar;}?>CakePHPで利用する場合には、コンポーネントとして登録しておくと使い勝手が良いかもしれません。