2014-03-26 27 views
0

我正在使用d3繪製圖表。以下方法效果絕對沒問題的IE10 +,Chrome和Firefox,但在IE9,它引發的JavaScript錯誤「SCRIPT5007:無法獲取的未定義或空值屬性‘節點’」d3.json在IE9上給出JS錯誤

在我看來,解決辦法將是發送json數據直接調用,而不是通過URL訪問json文件,然後在回調中創建圖形。

如果有人知道IE9的任何解決方案,請讓我知道。

d3.json(url, function (error, graph) { 
     force 
     .nodes(graph.nodes) 
     .links(graph.links) 
     .start(); 
... 
} 

回答

0

我認爲這是關係到IE9的兼容模式,嘗試添加這對你的頭

<meta http-equiv="X-UA-Compatible" content="IE=edge" > 

看到這個答案https://stackoverflow.com/a/5787944/263989一個更好的解釋

+1

它解決了這個問題,但它會導致一些其他問題:)我更喜歡第二種失敗安全的方法,直接提供json數據到d3而不是路徑。 無論如何,我會接受這個答案。 –