/*endの配列(ソース済み)からbeginに最も近い数値を選ぶ*/
if (end[i] >= begin) {
end = end[i];
+ break;
}
- break;
}
} else {
/*イベント待ちの場合は、endの値を、indefiniteとみなす。参照: http://www.w3.org/TR/smil-animation/#ComputingActiveDur
evt.initTimeEvent("beginEvent", ttd.defaultView, 0);
this.dispatchEvent(evt);
/*新しくリストの頭を更新して、別の値も実行させるようにする*/
- this._start.shift();
+ this._start && this._start.shift();
};
/*void*/ SVGAnimationElement.prototype.endElement = function() {
var ttd = this.ownerDocument,
evt = ttd.createEvent("TimeEvents");
evt.initTimeEvent("endEvent", ttd.defaultView, 0);
this.dispatchEvent(evt);
- this._finish.shift();
+ this._finish && this._finish.shift();
};
/*void*/ SVGAnimationElement.prototype.beginElementAt = function(/*float*/ offset) {
var ntc = this.ownerDocument.documentElement.getCurrentTime(),