var _gaq = _gaq || []; _gaq.push([\'_setAccount\', \'UA-13211647-1\']); _gaq.push([\'_trackPageview\']); (function() { var ga = document.createElement(\'script\'); ga.type = \'text/javascript\'; ga.async = true; ga.src = (\'https:\' == document.location.protocol ? \'https://ssl\' : \'http://www\') + \'.google-analytics.com/ga.js\'; var s = document.getElementsByTagName(\'script\')[0]; s.parentNode.insertBefore(ga, s); })();

12 Responses so far.

  1. cyon says:

    はじめまして、PNGのアニメーションができて驚きました!
    animateImage.js でアニメーションがループしないバージョンを作ってください。。。お願いします!!

  2. cyon says:

    javascriptをいじったら何とかできました!
    素晴らしいものをありがとうございます><

  3. attosoft says:

    コメントありがとうございます。

    せっかくコメントをいただいたので AnimateImage スクリプトの改良に取り組み、先ほど AnimateImage version 0.6 を公開しました。

    アニメーションをループさせない件については既に自己解決されたようですが、ほかにも改良点がいくつかありますので良かったらお使いください。

    ※ 前バージョン (0.5) からの変更点

    • アニメーションごとに異なるアニメーション間隔を指定できなかった制限を解消
    • アニメーションの繰り返し回数の指定に対応 (異なる繰り返し回数の指定にも対応)
    • 複数のアニメーションに共通するアニメーション設定の導入
      • 共通のアニメーション間隔
      • 共通のアニメーションの繰り返し回数
      • アニメーション終了時に最初の画像に巻き戻すかどうか

    ※ (ループしない) 1 回のアニメーションに加えて、任意の回数のアニメーションもできます。またアニメーション設定を利用すると、アニメーション間隔やアニメーションの繰り返し回数をまとめて指定できます。たとえば “Animations.repeat = 1” と記述しておけば animateImage 関数で繰り返し回数の指定が省略できます。それからアニメーション終了時に最後の画像のままにしておくか、最初の画像に巻き戻すかを指定できます。

  4. cyon says:

    こういうスクリプトが欲しいと思っていました!
    ホントにありがとうございました!

    変更点にある機能は、欲しかったものばかりなのでとても嬉しいです><

  5. attosoft says:

    いえ、こちらこそご利用いただけてうれしいです。モチベーションにもつながりますし。

    AnimateImage version 0.6.1 にマイナーバージョンアップしました。アニメーション画像にスタイル (CSS) を適用できるよう、デフォルトで img@class=”animation” を設定します。

  6. cyon says:

    マイナーバージョンアップもすごく便利です!
    CSSが適用できるようになって、かゆいところにも
    手が届きます…!><

  7. cyon says:

    バージョンアップありがとうございます!
    重宝しております!><

  8. attosoft says:

    なんか頻繁なバージョンアップになってしまってちょっと申し訳ないです。

    修正をある程度まとめてからリリースしようと思ってるのですが、リリースしてから追加したい機能やスマートな実装方法を思いつくもので…。

    けれどそろそろネタ切れですし、使用に耐える程度の機能は実装し終えたという認識ですので、新しいアイディアが浮かばない限りしばらくバージョンアップはないでしょう (前言撤回:version 0.6.4 にバージョンアップしました)。

  9. cyon says:

    お世話になります><

    複数のアニメーションが存在しているとき、
    その中のうち、ひとつのアニメーションに
    Animations.rewind = true
    を適用させて、アニメーション終了時に最初の画像に
    巻き戻そうと思ったのですが、
    すべてのアニメーションに巻き戻しが適用されてしまいます。
    ※デフォルトの設定は rewind:false でループしない設定にしています。

    ご確認いただけたらと思います><

  10. attosoft says:

    > 複数のアニメーションが存在しているとき、
    > その中のうち、ひとつのアニメーションに
    > Animations.rewind = true
    > を適用させて、アニメーション終了時に最初の画像に
    > 巻き戻そうと思ったのですが、
    > すべてのアニメーションに巻き戻しが適用されてしまいます。
    > ※デフォルトの設定は rewind:false でループしない設定にしています。

    Animations.rewind をアニメーションごとに設定するような状況は考えてませんでしたので、確かに指摘されたような挙動になります。

    アニメーション終了時に最初の画像に巻き戻すかどうか (Animations.rewind) をアニメーションごとに設定できるように修正した version 0.6.4 をリリースしました。animateImage() 関数で引数 rewind を指定することで、アニメーション終了時に最後の画像のままにしておくか、あるいは最初の画像に巻き戻すかをアニメーションごとに設定することができます。

    記述例3 にも書きましたが、アニメーション終了時に最初の画像に巻き戻すかどうかをアニメーションごとに設定する場合は次のような記述になります。

    animateImage('id-foo', 'Foo{0}.png', 5, 'Image Foo', 500, 1);
    animateImage('id-bar', 'Bar{0}.png', 5, 'Image Bar', 500, 1, true);
    

    ※ 参考までに、アニメーション終了時に最初の画像に巻き戻す (rewind = true) をデフォルトの動作にしたい場合は次のような記述になります。

    Animations.rewind = true;
    animateImage('id-foo', 'Foo{0}.png', 5, 'Image Foo', 500, 1, false);
    animateImage('id-bar', 'Bar{0}.png', 5, 'Image Bar', 500, 1);
    
  11. attosoft says:

    > ※ 参考までに、アニメーション終了時に最初の画像に巻き戻す (rewind = true) をデフォルトの動作にしたい場合は次のような記述になります。

    実際にはバグのため正しく動いてませんでした。

    version 0.6.4.1
    animateImage() 関数の引数 rewind に false を指定するとデフォルト値 (Animations.rewind) で上書きされるバグを修正
  12. cyon says:

    対応ありがとうございます!
    思ったような動きが実現できたので、嬉しいです><

Leave a Reply

Your email address will not be published.