OSDN Git Service

Modify and object
authordhrname <dhrname@users.sourceforge.jp>
Sun, 16 Oct 2016 12:10:33 +0000 (21:10 +0900)
committerdhrname <dhrname@users.sourceforge.jp>
Sun, 16 Oct 2016 12:10:33 +0000 (21:10 +0900)
org/w3c/dom/smil.js

index 3549d9d..ea5bf2f 100644 (file)
@@ -258,6 +258,9 @@ base("$frame").mix ( {
       }\r
       state = list = void 0;\r
     }\r
+  } ).mix( function() {\r
+    /*後述の$beginや$endで使うメソッド*/\r
+    this.addList = this.addBeginList;\r
   } );\r
   \r
   /*$endFrame オブジェクト\r
@@ -352,9 +355,6 @@ base("$frame").mix ( {
       }\r
     },\r
     \r
-    /*$frame.$listのbeginList(あるいはendList)オブジェクトを設定しておくプロパティ*/\r
-    list: $frame.$list.beginList,\r
-    \r
     /*_parse メソッド\r
      * 引数の文字列を解析して、フレーム数を算出し、結果を$frame.beginプロパティに出力\r
      * また、イベントリスナーに登録をしておく*/\r
@@ -392,7 +392,7 @@ base("$frame").mix ( {
          * eventOffsetとobjListの変数はクロージャとしてlistener関数で使われる*/\r
         var eventOffset = this.begin,\r
             /*objListのvalueプロパティはあとで書き換えられる*/\r
-            objList = this.$list.addBeginList(Number.MAX_VALUE),\r
+            objList = this.$list.addList(Number.MAX_VALUE),\r
         /*イベントのリスナーとして使う*/\r
             listener = function(evt) {\r
               objList.value = this.begin = eventOffset + this.$frame.currentFrame;\r
@@ -420,6 +420,8 @@ base("$frame").mix ( {
           ele && ele.addEventListener(evtName, listener.bind(this), false);\r
         }\r
       } else {\r
+        /*開始リストに登録しておく($endの場合は終了リストに登録)*/\r
+        this.$list.addList(this.begin);\r
         /*イベントの影響を防ぐため\r
          * すでに、フレームオブジェクトのタイムラインには登録済みなので、\r
          * フレームではなく、自分独自のタイムラインに登録しておけばよい*/\r
@@ -570,11 +572,15 @@ base("$frame").mix ( {
       if (!this.string) {\r
         return null;\r
       }\r
+      /*addListメソッドには、addBeginList関数が入っているはずなので、それを変更する*/\r
+      this.$list.addList = this.$list.addEndList;\r
       this.parse(this.string);\r
       return this.isResolved ? this.begin\r
                              : "indefinite";\r
     }\r
   } ).mix( {\r
+    $list: $frame.$begin.$list.up(),\r
+    \r
     /*イベントリスナー用の関数*/\r
     listener: function(evt) {\r
       if (this.begin <= 0) {\r