というわけで、休日潰してJavascriptであみだくじを作った。これを灰色の人生と呼ぶか、バラ色の人生と呼ぶかは、私には分からない。
http://www.mwsoft.jp/programming/webtools/random_chooser_amida.html
Firefox3, IE8, IE8互換モード, Chrome1で動作確認。
数字を選択すると、赤い線が伸びながらあみだをたどっていくようにした。この時、下や右に線を伸ばすのはEffect.Scale(対象のエレメントを伸長する)で実現できたのだが、左側に伸ばす設定が見当たらなかった。
探せばあるような気がしたけど、Effect.Scaleの中身見てたら、現在の場所を中心として上下左右に伸長する機能があったので、その辺を少し拡張して左上に向けて伸長する機能も追加してみた。
イメージ的にはこんな感じ。optionsにscaleFromRightBottom:trueを設定すると、左上に伸びるようになる。いろいろいじってたので記憶が薄いけど、たぶん1/2してる以外センターと同じ。
var ExEffect = Class.create();
Effect.ExScale = Class.create(Effect.Scale, {
setDimensions: function(height, width) {
//中略
else if (this.options.scaleFromRightBottom) {
var topd = (height - this.dims[0]);
var leftd = (width - this.dims[1]);
if (this.elementPositioning == 'absolute') {
if (this.options.scaleY) d.top = this.originalTop-topd + 'px';
if (this.options.scaleX) d.left = this.originalLeft-leftd + 'px';
} else {
if (this.options.scaleY) d.top = -topd + 'px';
if (this.options.scaleX) d.left = -leftd + 'px';
}
}
//後略