svnno****@sourc*****
svnno****@sourc*****
2011年 7月 6日 (水) 19:30:39 JST
Revision: 2818
http://sourceforge.jp/projects/sie/svn/view?view=rev&revision=2818
Author: dhrname
Date: 2011-07-06 19:30:39 +0900 (Wed, 06 Jul 2011)
Log Message:
-----------
0.81 trunk
Modified Paths:
--------------
trunk/sie.js
Property Changed:
----------------
trunk/sie.js
Modified: trunk/sie.js
===================================================================
--- trunk/sie.js 2011-07-05 14:24:12 UTC (rev 2817)
+++ trunk/sie.js 2011-07-06 10:30:39 UTC (rev 2818)
@@ -1,4 +1,4 @@
-/*SIE-SVG without Plugin under LGPL2.1 & GPL2.0 & Mozilla Public Lisence
+/*SIE-SVG without Plugin under LGPL2.1 & GPL2.0 & Mozilla Public Lisence
*公式ページは http://sie.sourceforge.jp/
*利用方法は <script defer="defer" type="text/javascript" src="sie.js"></script>
*http://sie.sourceforge.jp/
@@ -1909,6 +1909,10 @@
s = isNaN(s) ? 0 : s;
if (n >= "0" && n <= "9") {
type = /*CSSPrimitiveValue.CSS_NUMBER*/ 1;
+ if (unitType === 1) {
+ unitType = tc = n = type = null;
+ return s;
+ }
} else if (n === "%") {
s *= this._percent;
type = /*CSSPrimitiveValue.CSS_PERCENTAGE*/ 2;
@@ -3979,6 +3983,29 @@
/*responseXMLを使うと、時々、空のデータを返すことがあるため(原因は不明)、
*ここでは、responseTextを用いる
*/
+ var ifr = document.createElement("iframe");
+ ifr.marginWidth = ifr.marginHeight = "0px"; //このマージン設定がないと、全体がずれてしまう
+ ifr.scrolling = "no";
+ ifr.frameBorder = "0";
+ /*iframe要素を使って、描画のプロセスを分離する
+ *したがって、_docはdocumentとは別のオブジェクトとなる
+ */
+ this._tar.parentNode.insertBefore(ifr, this._tar);
+ ifr.contentWindow.screen.updateInterval = 999;
+ var _doc = ifr.contentWindow.document;
+ _doc.write("");
+ _doc.close(); // これがないと document.body は null になる
+ if (("namespaces" in _doc) && !_doc.namespaces["v"]) {
+ _doc.namespaces.add("v","urn:schemas-microsoft-com:vml");
+ _doc.namespaces.add("o","urn:schemas-microsoft-com:office:office");
+ var st = _doc.createStyleSheet(),
+ vmlUrl = "behavior: url(#default#VML);display: inline-block;} "; //inline-blockはIEのバグ対策
+ st.cssText = "v\\:rect{" +vmlUrl+ "v\\:image{" +vmlUrl+ "v\\:fill{" +vmlUrl+ "v\\:stroke{" +vmlUrl+ "o\\:opacity2{" +vmlUrl
+ + "dn\\:defs{display:none}"
+ + "v\\:group{text-indent:0px;position:relative;width:100%;height:100%;" +vmlUrl
+ + "v\\:shape{width:100%;height:100%;" +vmlUrl;
+ st = vmlUrl = null;
+ }
var str = this.xmlhttp.responseText,
_doc = document,
objei = this._tar,
@@ -3993,7 +4020,12 @@
style, fontSize, w, h, sw, sh, trstyle, tpstyle, backrs, viewWidth, viewHeight,
bfl, bft, bl, backright, backdown, text,
_parseFloat = parseFloat,
- ndoc = NAIBU.doc;
+ ndoc = NAIBU.doc,
+ oba = _doc.createElement("div"); //obaはradialGradient要素で使う
+ oba.setAttribute("id","_NAIBU_outline");
+ _doc.body.appendChild(oba);
+ _doc.body.style.backgroundColor = objei.parentNode.currentStyle.backgroundColor;
+ s._document_ = _doc; //_document_プロパティはradialGradient要素やNAIBU._setPaintなどで使う
ndoc.async = false;
/*下記のプロパティについては、Microsoftのサイトを参照
*ResolveExternals Property [Second-level DOM]
@@ -4050,11 +4082,13 @@
tar.setAttributeNodeNS(att);
}
str = attr = null;
+ ifr.style.width = tview.width+3+ "px";
+ ifr.style.height = tview.height+3+ "px";
dcp.style.width = tview.width+ "px";
dcp.style.height = tview.height+ "px";
dcp.coordsize = tview.width+ " " +tview.height;
sp.appendChild(dcp);
- objei.parentNode.insertBefore(sp, objei);
+ _doc.body.appendChild(sp);
dcp.appendChild(sdt);
while (fi) { //子ノードを検索して、子供がいれば、importNodeメソッドを再帰的に実行する
n = s.importNode(fi, true);
@@ -4135,13 +4169,14 @@
}
}
s.defaultView._cache = s.defaultView._cache_ele = null;
- evt = _doc = objei = tar = tview = objw = objh = n = att = sdt = sp = dcp = backr = w = h = sw = sh = style = fontSize = null;
+ oba = _doc = evt = _doc = objei = tar = tview = objw = objh = n = att = sdt = sp = dcp = backr = w = h = sw = sh = style = fontSize = null;
trstyle = tpstyle = backrs = viewWidth = viewHeight = text = texti = i = bfl = bft = bl = bt = backdown = backright = null;
text = _parseFloat = null;
/*IEのメモリリーク対策として、空関数を入力*/
this.xmlhttp.onreadystatechange = NAIBU.emptyFunction;
if (this._next) {
- s = null;
+ ifr.contentWindow.screen.updateInterval = 0;
+ ifr = s = null;
this._next._init();
} else {
/*全要素の読み込みが終了した場合*/
@@ -4914,7 +4949,8 @@
};
SVGPathElement.constructor = SVGElement;
SVGPathElement.prototype = new SVGElement();
-SVGPathElement.prototype._attrModi = function(evt){
+(function(_sproto) {
+_sproto._attrModi = function(evt){
var tar = evt.target;
if (evt.attrName === "d" && evt.newValue !== ""){
/* d属性の値が空の場合は、描画を行わないようにする
@@ -5207,7 +5243,7 @@
}
evt = tar = taco = cx = cy = xn = yn = startx = starty = tnl = tlist = ti = dii = ts = isZ = isM = isL = isC = s = null;
};
-SVGPathElement.prototype._nodeInsert = function(evt){
+_sproto._nodeInsert = function(evt){
var tar = evt.target;
if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
return; //強制終了させる
@@ -5238,7 +5274,7 @@
tar.addEventListener("DOMNodeInsertedIntoDocument", tar._nodeInsertInto, false);
evt = tar = null;
};
-SVGPathElement.prototype._nodeInsertInto = function(evt){
+_sproto._nodeInsertInto = function(evt){
/*以下の処理は、normalizedpathSegListとCTMに基づいて、
*SVGのd属性をVMLに変換していく処理である。
*/
@@ -5283,7 +5319,7 @@
delete tar._currentStyle;
evt = tar = dat = t = tx = ty = matrix = tlist = x = y = _parseInt = ma = mb = mc = md = me = mf = vi = isZ = isC = i = tli = tps = ti = cname = tt = null;
};
-SVGPathElement.prototype._com = {
+_sproto._com = {
_nameCom : {
z : " x ",
Z : " x ",
@@ -5311,7 +5347,7 @@
isRe : /,/,
isSp : /\S+/g
};
- /*float*/ SVGPathElement.prototype.getTotalLength = function() {
+ /*float*/ _sproto.getTotalLength = function() {
var s = 0,
nl = this.normalizedPathSegList;
for (var i=1,nln=nl.numberOfItems,ms=null;i<nln;++i) {
@@ -5342,7 +5378,7 @@
this.pathLength.baseVal = s;
return s;
};
- /*SVGPoint*/ SVGPathElement.prototype.getPointAtLength = function(/*float*/ distance ) {
+ /*SVGPoint*/ _sproto.getPointAtLength = function(/*float*/ distance ) {
var segn = this.getPathSegAtLength(distance),
x = 0,
y = 0,
@@ -5390,7 +5426,7 @@
}
return s;
};
- /*unsigned long*/ SVGPathElement.prototype.getPathSegAtLength = function(/*float*/ distance ) {
+ /*unsigned long*/ _sproto.getPathSegAtLength = function(/*float*/ distance ) {
var nl = this.normalizedPathSegList; //仕様ではpathSegList
for (var i=0,nln=nl.numberOfItems,ms=null;i<nln;++i) {
var seg = nl.getItem(i);
@@ -5422,35 +5458,35 @@
*/
return (nl.numberOfItems - 1);
};
- /*SVGPathSegClosePath*/ SVGPathElement.prototype.createSVGPathSegClosePath = function() {
+ /*SVGPathSegClosePath*/ _sproto.createSVGPathSegClosePath = function() {
var _SVGPathSegClosePath = SVGPathSegClosePath;
return (new _SVGPathSegClosePath());
};
- /*SVGPathSegMovetoAbs*/ SVGPathElement.prototype.createSVGPathSegMovetoAbs = function(/*float*/ x, /*float*/ y ) {
+ /*SVGPathSegMovetoAbs*/ _sproto.createSVGPathSegMovetoAbs = function(/*float*/ x, /*float*/ y ) {
var _SVGPathSegMovetoAbs = SVGPathSegMovetoAbs, s = new _SVGPathSegMovetoAbs();
s.x = x;
s.y = y;
return s;
};
- /*SVGPathSegMovetoRel*/ SVGPathElement.prototype.createSVGPathSegMovetoRel = function(/*float*/ x, /*float*/ y ) {
+ /*SVGPathSegMovetoRel*/ _sproto.createSVGPathSegMovetoRel = function(/*float*/ x, /*float*/ y ) {
var s = new SVGPathSegMovetoRel();
s.x = x;
s.y = y;
return s;
};
- /*SVGPathSegLinetoAbs*/ SVGPathElement.prototype.createSVGPathSegLinetoAbs = function(/*float*/ x, /*float*/ y ) {
+ /*SVGPathSegLinetoAbs*/ _sproto.createSVGPathSegLinetoAbs = function(/*float*/ x, /*float*/ y ) {
var s = new SVGPathSegLinetoAbs();
s.x = x;
s.y = y;
return s;
};
- /*SVGPathSegLinetoRel*/ SVGPathElement.prototype.createSVGPathSegLinetoRel = function(/*float*/ x, /*float*/ y ) {
+ /*SVGPathSegLinetoRel*/ _sproto.createSVGPathSegLinetoRel = function(/*float*/ x, /*float*/ y ) {
var s = new SVGPathSegLinetoRel();
s.x = x;
s.y = y;
return s;
};
- /*SVGPathSegCurvetoCubicAbs*/ SVGPathElement.prototype.createSVGPathSegCurvetoCubicAbs = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1, /*float*/ x2, /*float*/ y2 ) {
+ /*SVGPathSegCurvetoCubicAbs*/ _sproto.createSVGPathSegCurvetoCubicAbs = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1, /*float*/ x2, /*float*/ y2 ) {
var _SVGPathSegCurvetoCubicAbs = SVGPathSegCurvetoCubicAbs, s = new _SVGPathSegCurvetoCubicAbs();
s.x = x;
s.y = y;
@@ -5460,7 +5496,7 @@
s.y2 = y2;
return s;
};
- /*SVGPathSegCurvetoCubicRel*/ SVGPathElement.prototype.createSVGPathSegCurvetoCubicRel = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1, /*float*/ x2, /*float*/ y2 ) {
+ /*SVGPathSegCurvetoCubicRel*/ _sproto.createSVGPathSegCurvetoCubicRel = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1, /*float*/ x2, /*float*/ y2 ) {
var s = new SVGPathSegCurvetoCubicRel();
s.x = x;
s.y = y;
@@ -5470,7 +5506,7 @@
s.y2 = y2;
return s;
};
- /*SVGPathSegCurvetoQuadraticAbs*/ SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticAbs = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1 ) {
+ /*SVGPathSegCurvetoQuadraticAbs*/ _sproto.createSVGPathSegCurvetoQuadraticAbs = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1 ) {
var s = new SVGPathSegCurvetoQuadraticAbs();
s.x = x;
s.y = y;
@@ -5478,7 +5514,7 @@
s.y1 = y1;
return s;
};
- /*SVGPathSegCurvetoQuadraticRel*/ SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticRel = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1 ) {
+ /*SVGPathSegCurvetoQuadraticRel*/ _sproto.createSVGPathSegCurvetoQuadraticRel = function(/*float*/ x, /*float*/ y, /*float*/ x1, /*float*/ y1 ) {
var s = new SVGPathSegCurvetoQuadraticRel();
s.x = x;
s.y = y;
@@ -5486,7 +5522,7 @@
s.y1 = y1;
return s;
};
- /*SVGPathSegArcAbs*/ SVGPathElement.prototype.createSVGPathSegArcAbs = function(/*float*/ x, /*float*/ y, /*float*/ r1, /*float*/ r2, /*float*/ angle, /*boolean*/ largeArcFlag, /*boolean*/ sweepFlag ) {
+ /*SVGPathSegArcAbs*/ _sproto.createSVGPathSegArcAbs = function(/*float*/ x, /*float*/ y, /*float*/ r1, /*float*/ r2, /*float*/ angle, /*boolean*/ largeArcFlag, /*boolean*/ sweepFlag ) {
var s = new SVGPathSegArcAbs();
s.x = x;
s.y = y;
@@ -5497,7 +5533,7 @@
s.sweepFlag = sweepFlag;
return s;
};
- /*SVGPathSegArcRel*/ SVGPathElement.prototype.createSVGPathSegArcRel = function(/*float*/ x, /*float*/ y, /*float*/ r1, /*float*/ r2, /*float*/ angle, /*boolean*/ largeArcFlag, /*boolean*/ sweepFlag ) {
+ /*SVGPathSegArcRel*/ _sproto.createSVGPathSegArcRel = function(/*float*/ x, /*float*/ y, /*float*/ r1, /*float*/ r2, /*float*/ angle, /*boolean*/ largeArcFlag, /*boolean*/ sweepFlag ) {
var s = new SVGPathSegArcRel();
s.x = x;
s.y = y;
@@ -5508,31 +5544,31 @@
s.sweepFlag = sweepFlag;
return s;
};
- /*SVGPathSegLinetoHorizontalAbs*/ SVGPathElement.prototype.createSVGPathSegLinetoHorizontalAbs = function(/*float*/ x ) {
+ /*SVGPathSegLinetoHorizontalAbs*/ _sproto.createSVGPathSegLinetoHorizontalAbs = function(/*float*/ x ) {
var s = new SVGPathSegLinetoHorizontalAbs();
s.x = x;
s.y = 0; //DOMでは指定されていないが、変換処理が楽なので用いる
return s;
};
- /*SVGPathSegLinetoHorizontalRel*/ SVGPathElement.prototype.createSVGPathSegLinetoHorizontalRel = function(/*float*/ x ) {
+ /*SVGPathSegLinetoHorizontalRel*/ _sproto.createSVGPathSegLinetoHorizontalRel = function(/*float*/ x ) {
var s = new SVGPathSegLinetoHorizontalRel();
s.x = x;
s.y = 0;
return s;
};
- /*SVGPathSegLinetoVerticalAbs*/ SVGPathElement.prototype.createSVGPathSegLinetoVerticalAbs = function(/*float*/ y ) {
+ /*SVGPathSegLinetoVerticalAbs*/ _sproto.createSVGPathSegLinetoVerticalAbs = function(/*float*/ y ) {
var s = new SVGPathSegLinetoVerticalAbs();
s.x = 0;
s.y = y;
return s;
};
- /*SVGPathSegLinetoVerticalRel*/ SVGPathElement.prototype.createSVGPathSegLinetoVerticalRel = function(/*float*/ y ) {
+ /*SVGPathSegLinetoVerticalRel*/ _sproto.createSVGPathSegLinetoVerticalRel = function(/*float*/ y ) {
var s = new SVGPathSegLinetoVerticalRel();
s.x = 0;
s.y = y;
return s;
};
- /*SVGPathSegCurvetoCubicSmoothAbs*/ SVGPathElement.prototype.createSVGPathSegCurvetoCubicSmoothAbs = function(/*float*/ x, /*float*/ y, /*float*/ x2, /*float*/ y2 ) {
+ /*SVGPathSegCurvetoCubicSmoothAbs*/ _sproto.createSVGPathSegCurvetoCubicSmoothAbs = function(/*float*/ x, /*float*/ y, /*float*/ x2, /*float*/ y2 ) {
var s = new SVGPathSegCurvetoCubicSmoothAbs();
s.x = x;
s.y = y;
@@ -5540,7 +5576,7 @@
s.y2 = y2;
return s;
};
- /*SVGPathSegCurvetoCubicSmoothRel*/ SVGPathElement.prototype.createSVGPathSegCurvetoCubicSmoothRel = function(/*float*/ x, /*float*/ y, /*float*/ x2, /*float*/ y2 ) {
+ /*SVGPathSegCurvetoCubicSmoothRel*/ _sproto.createSVGPathSegCurvetoCubicSmoothRel = function(/*float*/ x, /*float*/ y, /*float*/ x2, /*float*/ y2 ) {
var s = new SVGPathSegCurvetoCubicSmoothRel();
s.x = x;
s.y = y;
@@ -5548,18 +5584,19 @@
s.y2 = y2;
return s;
};
- /*SVGPathSegCurvetoQuadraticSmoothAbs*/ SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticSmoothAbs = function(/*float*/ x, /*float*/ y ) {
+ /*SVGPathSegCurvetoQuadraticSmoothAbs*/ _sproto.createSVGPathSegCurvetoQuadraticSmoothAbs = function(/*float*/ x, /*float*/ y ) {
var s = new SVGPathSegCurvetoQuadraticSmoothAbs();
s.x = x;
s.y = y;
return s;
};
- /*SVGPathSegCurvetoQuadraticSmoothRel*/ SVGPathElement.prototype.createSVGPathSegCurvetoQuadraticSmoothRel = function(/*float*/ x, /*float*/ y ) {
+ /*SVGPathSegCurvetoQuadraticSmoothRel*/ _sproto.createSVGPathSegCurvetoQuadraticSmoothRel = function(/*float*/ x, /*float*/ y ) {
var s = new SVGPathSegCurvetoQuadraticSmoothRel();
s.x = x;
s.y = y;
return s;
};
+})(SVGPathElement.prototype)
NAIBU.SVGPathElement = SVGPathElement; //IE8では、SVGPathElementはローカル変数
})(document, parseInt, Math);
@@ -5574,11 +5611,13 @@
/*readonly SVGAnimatedLength*/ this.rx = new SVGAnimatedLength();
/*readonly SVGAnimatedLength*/ this.ry = new SVGAnimatedLength();
this.addEventListener("DOMNodeInserted", function(evt){
- var tar = evt.target;
if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
return; //強制終了させる
}
- var tnext = tar.nextSibling, tpar = tar.parentNode, isLast = true;
+ var tar = evt.target,
+ tnext = tar.nextSibling,
+ tpar = tar.parentNode,
+ isLast = true;
if (tnext && tnext._tar && tpar._tar && (tnext._tar.parentNode === tpar._tar)) {
tpar._tar.insertBefore(tar._tar, tnext._tar);
} else if (tnext && !tnext._tar && tpar._tar) {
@@ -5600,57 +5639,73 @@
}
tnext = tpar = isLast = null;
tar.addEventListener("DOMNodeInsertedIntoDocument", function(evt) {
- var tar = evt.target, style = tar.ownerDocument.defaultView.getComputedStyle(tar, "");
- var fontSize = parseFloat(style.getPropertyValue("font-size"));
+ var tar = evt.target,
+ style = tar.ownerDocument.defaultView.getComputedStyle(tar, ""),
+ fontSize = parseFloat(style.getPropertyValue("font-size"));
tar.x.baseVal._emToUnit(fontSize);
tar.y.baseVal._emToUnit(fontSize);
tar.width.baseVal._emToUnit(fontSize);
tar.height.baseVal._emToUnit(fontSize);
- var rx = tar.getAttributeNS(null, "rx"), ry = tar.getAttributeNS(null, "ry");
- var x = tar.x.baseVal.value, y = tar.y.baseVal.value, xw = x + tar.width.baseVal.value, yh = y + tar.height.baseVal.value;
- var list;
+ var rx = tar.getAttributeNS(null, "rx"),
+ ry = tar.getAttributeNS(null, "ry"),
+ x = tar.x.baseVal.value,
+ y = tar.y.baseVal.value,
+ xw = x + tar.width.baseVal.value,
+ yh = y + tar.height.baseVal.value,
+ list;
if ((rx || ry) && (rx !== "0") && (ry !== "0")) {
tar.rx.baseVal._emToUnit(fontSize);
tar.ry.baseVal._emToUnit(fontSize);
- var thrx = tar.rx.baseVal, thry = tar.ry.baseVal;
+ var thrx = tar.rx.baseVal,
+ thry = tar.ry.baseVal,
+ twidth = tar.width.baseVal.value,
+ theight = tar.height.baseVal.value;
thrx.value = rx ? thrx.value : thry.value;
thry.value = ry ? thry.value : thrx.value;
//rx属性が幅より大きければ、幅の半分を属性に設定(ry属性は高さと比較する)
- var twidth = tar.width.baseVal.value, theight = tar.height.baseVal.value;
if (thrx.value > twidth / 2) {
thrx.value = twidth / 2;
}
if (thry.value > theight / 2) {
thry.value = theight / 2;
}
- var rxv = thrx.value, ryv = thry.value;
- var rrx = rxv * 0.55228, rry = ryv * 0.55228;
- var a = xw - rxv, b = x + rxv, c = y + ryv, d = yh - ryv;
+ var rxv = thrx.value,
+ ryv = thry.value,
+ rrx = rxv * 0.55228,
+ rry = ryv * 0.55228,
+ a = xw - rxv,
+ b = x + rxv,
+ c = y + ryv,
+ d = yh - ryv;
list = ["m",b,y, "l",a,y, "c",a+rrx,y,xw,c-rry,xw,c, "l",xw,d, "c",xw,d+rry,a+rrx,yh,a,yh, "l",b,yh, "c",b-rrx,yh,x,d+rry,x,d, "l",x,c, "c",x,c-rry,b-rrx,y,b,y];
} else {
list = ["m",x,y, "l",x,yh, xw,yh, xw,y, "x e"];
}
//以下は、配列listそのものをCTMで座標変換していく処理
- var par = tar.ownerDocument.documentElement, ctm = tar.getScreenCTM();
+ var par = tar.ownerDocument.documentElement,
+ ctm = tar.getScreenCTM(),
+ dat, p, pmt,
+ ele = tar._tar,
+ vi = tar.ownerDocument.documentElement,
+ w = vi.width.baseVal.value,
+ h = vi.height.baseVal.value;
for (var i=0, lili=list.length;i<lili;) {
if (isNaN(list[i])) { //コマンド文字は読み飛ばす
++i;
continue;
}
- var p = par.createSVGPoint();
+ p = par.createSVGPoint();
p.x = list[i];
p.y = list[i+1];
- var pmt = p.matrixTransform(ctm);
+ pmt = p.matrixTransform(ctm);
list[i] = pmt.x;
++i;
list[i] = pmt.y;
++i;
p = pmt = null;
}
- var dat = list.join(" ");
+ dat = list.join(" ");
//VMLに結び付けていく
- var ele = tar._tar, vi = tar.ownerDocument.documentElement;
- var w = vi.width.baseVal.value, h = vi.height.baseVal.value;
ele.path = dat;
ele.coordsize = w + " " + h;
NAIBU._setPaint(tar, ctm);
@@ -7009,6 +7064,7 @@
this._tar = _doc.createElement("a");
_doc = null;
/*readonly SVGAnimatedString*/ this.target = new SVGAnimatedString();
+ this.target.baseVal = "_self";
this.addEventListener("DOMAttrModified", function(evt){
var tar = evt.target;
if (evt.eventPhase === /*Event.BUBBLING_PHASE*/ 3) {
@@ -7073,6 +7129,11 @@
tar = evt = null;
return; //強制終了させる
}, true);
+ this.addEventListener("DOMNodeInsertedIntoDocument", function(evt){
+ var tar = evt.target;
+ tar._tar.setAttribute("target", tar.target.baseVal);
+ tar = null;
+ }, false);
SVGURIReference.apply(this, arguments);
return this;
};
@@ -7438,9 +7499,7 @@
}
if (nci._end && (nci._end <= s) && (nci.getCurrentTime() !== 0)) {
nci.endElement();
- if (!!nci._frame) {
- nci._frame();
- }
+ nci._frame && nci._frame();
nci._currentFrame = 0;
delete nci._begin;
nci._end = null;
Property changes on: trunk/sie.js
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/04x/040/sie.js:812-829
/branches/04x/041/sie.js:891-923
/branches/04x/042/sie.js:927-967
/branches/04x/043/sie.js:969-1013
/branches/04x/044/sie.js:1015-1067
/branches/04x/045/sie.js:1069-1078
/branches/04x/046/sie.js:1080-1129
/branches/04x/047/sie.js:1131-1164
/branches/04x/048/sie.js:1166-1180
/branches/04x/sie.js:830-1181
/branches/05x/050/sie.js:1183-1201
/branches/05x/051/sie.js:1207-1323
/branches/05x/052/sie.js:1325-1352
/branches/05x/053/sie.js:1354-1400
/branches/05x/054/sie.js:1403-1422
/branches/05x/055/sie.js:1424-1454
/branches/05x/056/sie.js:1456-1491
/branches/05x/057/sie.js:1496-1523
/branches/05x/058/sie.js:1526-1590
/branches/05x/sie.js:1183-1594
/branches/06x/060/sie.js:1603-1850
/branches/06x/sie.js:1599-2355
/branches/07x/sie.js:2357-2748
/branches/08x/sie.js:2750-2789
+ /branches/04x/040/sie.js:812-829
/branches/04x/041/sie.js:891-923
/branches/04x/042/sie.js:927-967
/branches/04x/043/sie.js:969-1013
/branches/04x/044/sie.js:1015-1067
/branches/04x/045/sie.js:1069-1078
/branches/04x/046/sie.js:1080-1129
/branches/04x/047/sie.js:1131-1164
/branches/04x/048/sie.js:1166-1180
/branches/04x/sie.js:830-1181
/branches/05x/050/sie.js:1183-1201
/branches/05x/051/sie.js:1207-1323
/branches/05x/052/sie.js:1325-1352
/branches/05x/053/sie.js:1354-1400
/branches/05x/054/sie.js:1403-1422
/branches/05x/055/sie.js:1424-1454
/branches/05x/056/sie.js:1456-1491
/branches/05x/057/sie.js:1496-1523
/branches/05x/058/sie.js:1526-1590
/branches/05x/sie.js:1183-1594
/branches/06x/060/sie.js:1603-1850
/branches/06x/sie.js:1599-2355
/branches/07x/sie.js:2357-2748
/branches/08x/sie.js:2750-2817