Ich versuche eine SVG Elemente Viewbox in JavaScript zu ändern. Grundsätzlich zeichne ich einen binären Suchbaum, und wenn er zu weit wird, möchte ich die Viewbox so verkleinern, dass der Baum in das Fenster passt. Ich bin derzeit mit:SVG Viewbox mit JavaScript manipulieren (keine Bibliotheken)
if(SVGWidth>=1000){
var a = document.getElementById('svgArea');
a.setAttribute("viewbox","0 0 " + SVGWidth + " 300");
}
Die HTML ist:
<svg id="svgArea" xmlns="w3.org/2000/svg"; xmlns:xlink="w3.org/1999/xlink"; width="1000" height="300" viewBox="0 0 1000 300">
Ich habe auch versucht setAttributeNS mit ('null', ...), aber das scheint nicht zu funktionieren. Eine seltsame Sache, die ich bemerkt habe, ist, dass wenn ich alarmiere (a) es [object SVGSVGElement] gibt, was merkwürdig erscheint. Jede Hilfe wird geschätzt.
kann ich wissen, warum Sie Bibliotheken nicht verwenden möchten? –
Ich hätte hinzufügen sollen, SVGWidth ist wahrscheinlich ein falscher Variablenname, sollte nur treeWidth sein. Das HTML für die SVG ist auch:
Ich benutze keine Bibliotheken, weil ich mich auf das Lernen von JavaScript konzentriere. Mein nächstes Projekt werde ich in Bibliotheken hinzufügen, aber ich dachte, es wäre am besten, mit nativem JavaScript zu beginnen. –