}\r
state = list = void 0;\r
}\r
+ } ).mix( function() {\r
+ /*後述の$beginや$endで使うメソッド*/\r
+ this.addList = this.addBeginList;\r
} );\r
\r
/*$endFrame オブジェクト\r
}\r
},\r
\r
- /*$frame.$listのbeginList(あるいはendList)オブジェクトを設定しておくプロパティ*/\r
- list: $frame.$list.beginList,\r
- \r
/*_parse メソッド\r
* 引数の文字列を解析して、フレーム数を算出し、結果を$frame.beginプロパティに出力\r
* また、イベントリスナーに登録をしておく*/\r
* 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
ele && ele.addEventListener(evtName, listener.bind(this), false);\r
}\r
} else {\r
+ /*開始リストに登録しておく($endの場合は終了リストに登録)*/\r
+ this.$list.addList(this.begin);\r
/*イベントの影響を防ぐため\r
* すでに、フレームオブジェクトのタイムラインには登録済みなので、\r
* フレームではなく、自分独自のタイムラインに登録しておけばよい*/\r
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