无法使用d3.js更改字体大小
Unable to change font size using d3.js
是新的d3.js,我试图写一个简单的代码来计算从数组段落的字体大小。这是我的代码:
<html>
<head>
<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>
<script>
d3.select('body')
.selectAll('p')
.data([5,10])
.style("font-size", function(d) { return d + "px"; });
</script>
</head>
<body>
<p>para 1</p>
<p>para 2</p>
</body>
</html>
这似乎是一件非常简单的事情,但由于某种原因,它不起作用。
这是因为当脚本被执行时,<P>
元素还没有被创建。所以只要在页面的末尾包含脚本,它应该工作得很好。
JSFiddle联系
代码将是这样的。
<html>
<head>
<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>
</head>
<body>
<p>para 1</p>
<p>para 2</p>
</body>
<script>
d3.select('body')
.selectAll('p')
.data([5,10])
.style("font-size", function(d) { return d + "px"; });
</script>
</html>
方法2
您还可以在onLoad
事件中编写脚本,以便仅在创建DOM之后执行脚本。
在纯JavaScript中可以这样做
<script>
window.onload=function(){
d3.select('body')
.selectAll('p')
.data([5,10])
.style("font-size", function(d) { return d + "px"; });
}
</script>
你也可以使用jQuery(如果你喜欢的话)。
<script>
$(document).on('laod',funciton(){
d3.select('body')
.selectAll('p')
.data([5,10])
.style("font-size", function(d) { return d + "px"; });
});</script>
我更喜欢像本教程中解释的那样直接从数据生成HTML/SVG元素。
<html>
<head>
<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>
<script>
d3.select('body')
.data([5,10])
.enter().append("p")
.style("font-size", function(d) { return d + "px"; })
.text("para");
</script>
</head>
<body>
</body>
</html>
相关文章:
- charts js更改折线图轴的字体大小/颜色和背景线
- 文本框导致结构 JS 中的字体出现问题
- Canvas仅使用fabric.js在点击事件时渲染自定义Web字体
- Raphael JS中的动画字体大小是否有流畅的转换可能性
- 动态加载midi.js声音字体
- 当前日期js代码中字体颜色不变
- 如何在draft.js中设置默认的字体系列和大小
- 字体转换在线工具从TTF到js
- 在 Fabric.js 中使用远程 Web 字体初始化加载文本
- ASP .NET MVC 在背景上调用函数,在没有 JS 的情况下调整字体大小
- 我需要在 Fabric JS 中使用从特定文件夹中获取的字体
- 根据 js 中的分辨率计算字体大小
- 无法识别三种 JS 字体
- 使用 svg.js 指定 SVG 中字体文件中的字体
- 在 css/js 中为字体设置不同的宽度和高度
- 文本对象到路径:如何从使用Cambam字体的Raphael js中使用打印方法时生成的双路径中删除单个路径
- 使用 require.js 字体插件加载谷歌网络字体
- 织物 js 粗斜体不起作用,因为 JSON 中的字体样式对象
- 通过Flash ans JS获取字体
- Pixi.js中的自定义字体