[Sie-announce] SIEコード [2670] SVGStyleElementの修正

Back to archive index

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




Sie-announce メーリングリストの案内
Back to archive index