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);