OSDN Git Service

Edit the Spec for the setFrame method
authordhrname <dhrname@users.sourceforge.jp>
Sat, 8 Oct 2016 14:08:47 +0000 (23:08 +0900)
committerdhrname <dhrname@users.sourceforge.jp>
Sat, 8 Oct 2016 14:08:47 +0000 (23:08 +0900)
org/w3c/dom/smil.js
tool/Spec/spec/SvgDomSpec.js

index f9c53be..6a9071a 100644 (file)
@@ -208,7 +208,14 @@ base("$frame").mix ( {
     \r
     /*入力されたフレーム数fの場面に切り替えるメソッド*/\r
     setFrame: function( /*number*/ f) {\r
-      this.updateState(f);\r
+      var state = this.updateState(f);\r
+      /*開始と終了状態のときに、beginイベントとendイベントを呼び出しておいて、\r
+       * 次の状態に遷移する*/\r
+      if (state === this.BEGINNING) {\r
+        this.updateState(f);\r
+      } else if (state === this.ENDING) {\r
+        this.updataState(f);\r
+      }\r
     }\r
   } );\r
   \r
index b26dd43..d41a5ad 100644 (file)
@@ -331,9 +331,18 @@ describe("SMIL Animation Spec", function() {
         };\r
         appendBegin(0);\r
         frame.setFrame(0);\r
-        expect(frame.state).toBe(frame.BEGINNING);\r
+        expect(frame.state).toBe(frame.PLAYING);\r
+        frame.setFrame(1);\r
+        expect(frame.state).toBe(frame.PLAYING);\r
+        \r
+        frame.begin = 0;\r
+        appendBegin(1);\r
+        frame.setFrame(0);\r
+        expect(frame.state).toBe(frame.PLAYING);\r
         frame.setFrame(1);\r
         expect(frame.state).toBe(frame.PLAYING);\r
+        frame.setFrame(2);\r
+        expect(frame.state).toBe(frame.PLAYING);\r
       } );\r
     } );\r
   } );\r