打破D3在单独的HTML, JS和CSS文件不工作
Breaking D3 in separate HTML, JS and CSS files not working
大多数D3
示例都将HTML
, JavaScript
和CSS
放在同一个文件中。使用这个例子http://bl.ocks.org/d3noob/5028304,我试图打破这些成单独的文件(这样我就可以嵌入D3到一个网站,把文件在适当的位置)。
当所有文件都在一个文件中,比如index.html
,一切都正常工作。当我将其分成3个文件:index.html
, sankey_create.js
和style.css
时,HTML
的标题(我插入的<h1>Title</h1>
)呈现,但SVG没有。
可能的问题#1:文件引用
一切都在一个文件夹中,我认为我已经在header
中正确引用了单独的文件(Firefox
中的console
表示所有文件都已加载):
<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>
<script src="sankey.js"></script>
<script src="sankey_create.js"></script>
<link rel="stylesheet" type="text/css" href="style.css">
可能问题#2:绑定到外部HTML
元素
这个例子的工作方式是,D3
SVG
绑定到一个<p id="chart">
元素:
var svg = d3.select("#chart").append("svg") // This line is in sankey_create.js
我不确定是否需要以不同的方式引用元素,因为它们位于不同的文件中。
我只包含了我认为可能导致问题的代码,但如果有必要,我可以提供更多的代码/信息。
要分析这个问题,您需要从语义上理解,脚本标记可以被它们引用的代码替换,并且在处理下一个节点之前执行引用的代码,因此这与在索引文件中脚本标记所在的位置拥有代码是一样的。
相关文章:
- 如何修复:当javascript更改DOM时,iOS会删除CSS文件
- 使用Javascript读取CSS文件并动态更改页面
- js和css文件-在publichtml外部或内部
- Google PageSpeed Insights与多个CSS文件
- Javascript:动态更改CSS文件+Cookie
- 没有在django项目中加载CSS文件
- 在企业应用程序框架中包含js/css文件的最佳实践是什么
- Chrome审核:在外部CSS文件之间的头中发现了1个内联脚本块&”;
- 使用新的 CSS 文件覆盖当前网站
- 多余的JS和CSS文件
- 快递.js无法获取我的 CSS 文件
- 无法查找元素'手动加载CSS文件时的CSS属性
- jquery移动应用程序无法使用jquryMobile框架JS和css文件的相对路径
- 不同的引导 CSS 文件
- 加载CSS文件并覆盖上一个文件
- 使用 JavaScript 动态加载 CSS 文件
- 如何使用谷歌页面速度CSS加载脚本延迟多个CSS文件
- 在 html 文件中包含无缓存元标记是否也会阻止缓存该 html 文件中链接的 js 和 css 文件
- Spring MVC 集成 js 和 css 文件
- 如何将 JavaScript 和 CSS 文件添加到 MagentoModule