2016-07-14 68 views
0

我正在致力於JavaScript項目。d3.select不抓取正確的標記

我到目前爲止用d3.js所做的工作是繪製一張世界地圖。 我參考以下頁面。(http://www.d3noob.org/2013/03/a-simple-d3js-map-explained.html

所有國家都根據svg標籤繪製。

我想要做的是將圖像轉換成png並下載到本地計算機。

在互聯網上研究,它是可行的。

我需要將其轉換爲base64 datarurl,然後將其轉換爲PNG。

我必須做的第一件事是選擇svg標籤。

以下是我的代碼

function downloadImg(){  
     var html = d3.select("svg") 
       .attr("version", 1.1) 
       .attr("xmlns", "http://www.w3.org/2000/svg") 
       .node().parentNode.innerHTML; 

     window.alert(html); 
     ... 
     ... 
} 

出於測試目的,我打印出來的 「HTML」。 它給我的是整個身體。 我只需要有svg標籤元素。

你能告訴我我做錯了什麼嗎?

謝謝。

回答

1

Element.outerHTML是你的朋友在這裏:

var html = d3.select("svg") 
       .attr("version", 1.1) 
       .attr("xmlns", "http://www.w3.org/2000/svg") 
       .node().outerHTML