2013-02-08 53 views
1

d3.js不按预期附加div。 Debug 18 FF和Firebug。d3.js不能在本地服务器上工作

返回d3对象(在警报消息上),但图表对象返回空白。

d3.js lib正在加载好。

下面的代码

<?php header('Content-type: text/html; charset=utf-8');?> 
<!DOCTYPE html> 
<html> 
    <head> 
     <script type='text/javascript' src='js/d3.v3.js'></script> 
     <script type='text/javascript'> 
      var data = [4, 8, 15, 16, 23, 42]; 

      var chart = d3.select("#hurtme").append("div").attr("class", "chart"); 

      alert (d3); 

      //chart.selectAll("div").data(data).enter().append("div").style("width", function(d) { return d * 10 + "px"; }).text(function(d) { return d; }); 

     </script> 
    </head> 
    <body> 
     <div id='hurtme'></div> 
     hello 
    </body> 
</html> 

我缺少什么?

PS:我放弃了浏览器的不兼容性,因为来自网络的其他示例正常工作。

PS2:也尝试使用d3.v2.js和从源加载<script src="http://d3js.org/d3.v3.min.js"></script>,至今没有成功。

回答

8

你的脚本被加载并执行 div开始存在。尝试在div后移动脚本标签:

<div id='hurtme'></div> 
<script> type='text/javascript'> 
     var data = [4, 8, 15, 16, 23, 42]; 
     var chart = d3.select("#hurtme").append("div").attr("class", "chart"); 
</script> 

或者使用“的onload”功能:window.onload vs document.onload

+0

OMG ......反正我是没怀疑原因之前,我用“身体”尝试标记而不是'div'对象。任何方式thx。 – 2013-02-08 15:07:35

相关问题