やがて竜巻を引き起こす
この記事はスマートフォン等での閲覧を推奨しています
こないだのアオスジアゲハを人に見せていて、せっかくアオスジアゲハを作ったのだから
動かせるよ、それ。
あまりこういう使い方はされないのでしょうが、svg要素中にそのままJavaScriptの処理を書いてやって(当然、ブラウザのjs環境で動くわけですから端末の傾きもAPIから取得でき、)『画像が自ずから動く』ようにすることができます。
仕組みはSVGでプログラマブルな書体を作る話の加速度センサで書体を変化させるものにならいますが、
- idを用いて画像中の要素を掴む
- センサに反応があればsetAttribute()関数を用いて属性値を直接書きかえる
という手順になっています。
書いているうちに、よーしついでに羽ばたかせてしまおう、となったので transform
属性の値も書き換えます。ここは翅に幾何変形をかけているところで、今回はx軸方向のスケールを変化させました。
以下コード。プログラムとしては単純。
|
|
あとは、こうやって仕込みをしたsvg画像を
|
|
と書き込むことで、ページの一部として動作させたとき内部のJavaScriptが実行されて電子の蝶が羽ばたきます。