0
pinta(strSVG)
함수를 호출 할 때 html 페이지에있는 svg 파일에 노드를 추가해야합니다. 이 SVG 파일이 <object>
태그를 HTML 페이지에 포함되어자바 스크립트를 사용하여 SVG 문서를 SVG 문서에 추가
SVG 파일 :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-flat-20030114.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" height="100%" width="100%" onload="inicia(evt)" >
<script type="text/ecmascript"><![CDATA[
parent.pinta=pinta
function inicia(event){
SVGDocument = event.target.ownerDocument;
}
function pinta(strSVG){
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.loadXML(strSVG);
var newNode=xmlDoc.element;
SVGDocument.getElementById('grafico1').appendChild(newNode);
}
]]></script>
<svg y="" width="" height="" id="grafico1"/>
<svg y="500" width="" height="" id="grafico2"/>
<g id="tip_Cuadro"/>
<g id="tip_texto"/>
</svg>
가 잘못된 인수
핀타 (strSVG)에 대한 호출을 반환은 웹 페이지의 HTML에 :
0,123,726 :var object = document.getElementById('tbl27svg');
var svgdoc = object.contentDocument;
if (svgdoc && svgdoc.defaultView)
svgwin = svgdoc.defaultView;
else if (object.window)
svgwin = object.window;
else try {
svgwin = object.getWindow();
}
catch(exception) {
alert('The DocumentView interface is not supported\r\n' +
'Non-W3C methods of obtaining "window" also failed');
}
svgwin.pinta(str);
STR은 완전한 SVG의 문서를 포함
문제는 핀타가 srtSVG를받을 수 없다는 것입니다. srtSVG는 pinta (srtSVG) 함수에서 정의되지 않았습니다.
감사합니다. Robert. 하지만 : DOM 예외 : SYNTAX_ERR (12)'var doc = new DOMParser(). parseFromString (xmlDoc.documentElement, 'application/xml');'IE9에서는 유효하지 않습니다 ... xmlDoc.loadXML (strSVG); ', ?? – deimos1975
http://blogs.msdn.com/b/ie/archive/2010/10/15/domparser-and-xmlserializer-in-ie9-beta.aspx –
예, 문제는 보낼 수 없다고 생각합니다. strSVG 매개 변수를 통해 SVG 문서를 가져옵니다. 왜냐하면 내가 만든다면 : alert (srtSVG) 나는 정의되지 않은 srtSVG .... – deimos1975