我在博客文章中使用 d3js 时遇到了问题。
我已经成功完成了这样的安装
将 d3.min.js 复制到 /content/themes/[主题名称]/assets/js/
并添加
<script src="{{asset "js/d3.min.js"}}" charset="utf-8"></script>
进入
/content/themes/[主题名称]/default.hbs
顺便说一句:将其添加到<head>
零件中很重要!和
如果我在<script>
我的 Markdown 博客文章中添加一个,我没有得到任何预期的结果/操作
<script>
var svg = d3.select("#animviz")
.append("svg")
.attr("width", w)
.attr("height", h);
// some additional code you can find below
</script>
<div id="animviz">
</div>
我还尝试围绕这个 JS 编写自执行函数:
(function(){
// the hole code
})();
没有成功。
唯一有效的方法是包含the hole code
在 Ghost-Settings->Code Injection-> Blog Footer 中:
<script src="https://gist.githubusercontent.com/blablarnab/7621762/raw/0fc10237392911e12c4641c44cdd63066573430b/caterpillar.js"></script>
如果我将目标添加<div id="animviz"></div>
到博客文章 Markdown 中,这将有效。
有任何想法吗 ?我认为这是一个降价解析器问题。一种可能的解决方案是有一种方法将代码附加到博客文章中的 DOM(博客页脚)并刷新代码。但是如何?location.reload();
我想也会像 d3js 一样死掉吗?