2010
1028

simplelib

HTMLサイトを構築する際によく使う機能をまとめて、HTMLに1行追加するだけで以下のような様々な機能を追加できる、ライブラリ「SimpleLib」を公開しました。

accordion シンプルなアコーディオンナビゲーション
checkAll ひとつのチェックボックスで複数のチェックボックスを一括選択
fixHeight 複数のブロック要素の高さを揃える
ie6PngFix Internet Explorer 6でも透過PNGを使えるようにする
ie6PositionFixed Internet Explorer 6でもCSSの position:fixed を使えるようにする
imgSwap a要素をクリックして、別のimg要素の画像を切り替える
lightBox jQuery lightBoxプラグインを読み込む
overlayOthers 指定した要素の子のa要素にロールオーバーすると他のa要素にcssで背景色や背景画像を指定できる半透明の要素をかぶせる
rollOver マウスオーバー/マウスアウトで画像を切り替える
scroll スムーススクロール
showIfScroll 指定した要素をスクロールバーが表示されるとき(ドキュメントの高さがウィンドウの高さを超えるとき)だけ表示する
tab シンプルなタブナビゲーション
textHint 非選択時のテキストボックスにヒントを表示する
trimmedScroll img要素を含むa要素にロールオーバーすると別の画像をそのimg要素のサイズにトリミングしてスクロールしながら表示する

詳しくはこちらから
http://lab.starryworks.jp/js/simplelib/

2010
0930

以前作ったブロック要素の高さを揃えるのに便利な「fixHeight.js」というJavaScriptを大幅に改良して、アップデートしました。

以前の細かいオプションを廃止し、高さを揃えたい要素たちの親要素に「fixHeight」というクラスを付与すれば、行ごとのグループを自動で判断して高さを揃えてくれます。

jQueryプラグインの形にしたので、$("selector").fixHeight();として呼び出すこともできます。

なお、以前のバージョンと互換性はありませんのでお気をつけください。

fixHeight.jsはSimpleLibのプラグインとしても提供しています。SimpleLibの他のエフェクトやプラグインなどと併用する場合は、SimpleLibに同梱されているものをご利用ください。
http://lab.starryworks.jp/js/simplelib/

2009
1211

ajaxを使ったユーザーインターフェイスを作っていると、状況によってボタンを無効化したり、また有効にしたり、別の動作をさせたりしたいときがよくあります。

そういった場合、イベントをbindしたりunbindしたりを繰り返すのが面倒だし、コードも長くなってしまいます。

こんな問題を解決する為に、一時的にイベントハンドラを無効化して、後から簡単に元に戻せたり、状況に合わせて複数のイベントハンドラのグループを切り替えることができる「EventManager」というプラグインを作りました。

例えば、ajaxでページネーションを行う場合、ナビゲーションの「前へ」のボタンは前のコンテンツがもうないときはマウスオーバーやクリックのイベント処理を一時停止しておき、「次へ」がクリックされて、「前へ」のボタンを有効にする必要が出て来たときに、一時停止しておいたイベント処理を復活させることができます。

I made a plugin to manage events of jQuery. The plugin makes it easy to disable the event handlers temporary and enable them again.

2009
1116

おはようございます

先日ある開発でFlashVarsがnullになる現象に悩まされました。しかも、10回に1回くらいはnullにならないという現象。これを調べても、参考になる記事があまりにも無く、無いなら書いちゃいます。という事で書きます。

その時の実装は
SWFObject   version2.2
SWFAddress   version2.3
で構築してましたが、IEでなぜかFlashVarsがnull!!たまに、unnull!!
なんで!?

調べてみても、誰も同じ現象がいなく、なんか変な事ソースに書いちゃった?と調べに調べた結果。

SWFAddressのバージョンを2.4にしたら、すんなり直りました。もう!時間返してって感じです。でも、なんで10回に1回はnullじゃなかったんだろ。。。

ほんと気まぐれ。

追記:
FlashPlayerのバージョンは9で、症状が出たのはIE6、IE7でIE8は確認していません
おそらくIEすべてで出るかもしれないですね。。。

2009
0707

はじめまして、こんにちは。趣味は朝練のウエニシです。
既にweb上には業界の諸先輩方が書いておられるTipsなどが星の数ほどありますが、
上級者向けに書かれた記事などで内容が省略されていて、初心者や中級者にとってはもう少し詳しく説明されているとありがたいなあと思う事がよくあります。
自分自身もその一人で、調べたい事に関して説明しているサイトをいくつか見て、要約してまとめる事が多いです。ので、
そういったものを自分のメモの中で終わらせるのではなく、自分の備忘録的な意味も込めて、
このブログで公開していきたいと思います。
もちろんその他の事もいろいろ書いて行きたいと思っております!

記念すべきブログ1号目は、弊社の代表の木村が作りました、
複数のブロック要素の高さを、一行ごとに一番高い高さに揃えてくれるJavaScriptライブラリ「fixHeight.js」の事について書きたいと思います。

※このスクリプトは古いバージョンのものです。
大幅に改良された最新版がこちらにあります。

2008
1029

今制作中のサイトで少し変わったナビゲーションを実現させるために、ActionScriptからJavaScriptをのFunctionを呼び出したり、逆にJavaScriptからActionScriptのFunctionを呼びだすというような処理を多用するものを作っています。
それを実現するためにはActionScriptのExternalInterfaceを使うのですが、それでかなりハマってネットで検索しても同様の情報がなかったのでメモしておきます。

症状

以下のようなコードで、Flash Playerのバージョン9.0.48以前+IE 6/7の組み合わせの場合のみ、SWFを配置しただけでJavaScriptエラーが発生してExternalInterfaceの機能が全く動かなくなります。

ActionScript(2.0)例

//TextFieldを作る
var greetingText:TextField = this.createTextField("greeting",this.getNextHighestDepth(),0,0,100,100);

//JavaScriptから呼びだしてTextFieldの内容を変える
function changeText(t:String) {
	greetingText:TextField.text = t;
}
//ActionScriptのFunctionをJavaScriptから呼びだせるように登録
ExternalInterface.addCallback("extChangeText", null, changeText);
2008
0831

概要

ページ内リンクをクリックするとその場所までスムーズにスクロールし、対象のエレメントをチカチカさせるスクリプトです。
今やってる商業施設の仕事でイメージマップを使ったフロアマップから同じページ内にあるショップの一覧への遷移を分かりやすくするために作ったモノで、かなり簡単なスクリプトですが、気に入ったので公開します。

サンプル

 

コンテンツ1

コンテンツ2

コンテンツ3