svnno****@sourc*****
svnno****@sourc*****
2011年 5月 10日 (火) 23:18:23 JST
Revision: 2670
http://sourceforge.jp/projects/sie/svn/view?view=rev&revision=2670
Author: dhrname
Date: 2011-05-10 23:18:23 +0900 (Tue, 10 May 2011)
Log Message:
-----------
SVGStyleElementの修正
Modified Paths:
--------------
branches/07x/077/org/w3c/dom/svg.js
Modified: branches/07x/077/org/w3c/dom/svg.js
===================================================================
--- branches/07x/077/org/w3c/dom/svg.js 2011-05-10 14:01:27 UTC (rev 2669)
+++ branches/07x/077/org/w3c/dom/svg.js 2011-05-10 14:18:23 UTC (rev 2670)
@@ -1944,8 +1944,25 @@
rsi = ri.style.item(j);
scri.style.setProperty(rsi, ri.style.getProperty(rsi));
}
+ sheet.cssRules[sheet.cssRules.length] = scri;
}
tod.documentElement._svgload_limited--;
+ tod.documentElement.addEventListener("DOMNodeInsertedIntoDocument", function(evt) {
+ var tar = evt.target,
+ doc = evt.currentTarget,
+ rules = doc.styleSheet.cssRules,
+ selector, ru;
+ for (var i=0, rli=rules.length;i<rli;++i) {
+ selector = rules[i].selectorText;
+ /*_rulesプロパティはCSSモジュールのgetCoumputedStyleメソッドで使う*/
+ ru = tar._rules || [];
+ if (selector.indexOf("." +tar.className) || selector.indexOf("#" +tar.id)
+ || selector.test(new RegExp(tar.nodeName+ "$"))) {
+ ru[ru.length] = rules[i];
+ }
+ }
+ tar = doc = rules = null;
+ }, true);
if (tod.documentElement._svgload_limited < 0) {
evt = tod.createEvent("SVGEvents");
evt.initEvent("SVGLoad", false, false);