我試圖在JavaScript中更改SVG元素視框。基本上,我繪製了一個二叉搜索樹,當它變得太寬時,我想要改變視框來縮小視圖,以使樹適合窗口。我目前使用:使用JavaScript處理SVG視框(無庫)
if(SVGWidth>=1000){
var a = document.getElementById('svgArea');
a.setAttribute("viewbox","0 0 " + SVGWidth + " 300");
}
的HTML是:
<svg id="svgArea" xmlns="w3.org/2000/svg"; xmlns:xlink="w3.org/1999/xlink"; width="1000" height="300" viewBox="0 0 1000 300">
我也使用setAttributeNS試過( '空',...),但似乎沒有任何工作。我注意到的一件奇怪的事情是,當我提醒(a)它給出[object SVGSVGElement]時,這看起來很奇怪。任何幫助表示讚賞。
我可以知道你爲什麼不想使用庫嗎? – 2012-04-10 08:01:29
我應該添加,SVGWidth可能是一個不好的變量名稱,應該只是treeWidth。另外,SVG的html是:
我沒有使用庫,因爲我專注於學習JavaScript。我將在圖書館添加下一個項目,但我認爲最好從本機JavaScript開始。 – 2012-04-10 08:02:51