27

test.phpPHPで生成されているSVGオブジェクトです。

<object data="test.php" type="image/svg+xml" id="SVG" />
<script>
    var mySVG = document.getElementById("SVG");
    var svgDoc = mySVG.contentDocument;

svgDoc無効である。(したがって、JS経由でsvgの要素にアクセスすることはできません。)この質問を見ると、機能するはずです。 私は何が間違っているのですか?どうすればcontentDocumentSVGを入手できますか?

4

2 に答える 2

37

SVG が読み込まれ、contentDocument にアクセスできるようになるまで待つ必要があります。

 var mySVG = document.getElementById("SVG");
 var svgDoc;
 mySVG.addEventListener("load",function() {
      svgDoc = mySVG.contentDocument;
      alert("SVG contentDocument Loaded!");
 }, false);
于 2012-07-11T14:37:25.990 に答える