我的页面上有路径元素,它们有一个属性“title”,它是一个 html 信息表。这是一个例子:
<table>
<tr>
<td>
<b><u>California</u></b>
</td>
</tr>
<tr>
<td>
<u>University</u>
</td>
<td>
<u>Percent</u>
</td>
</tr>
<tr>
<td>
California 1:
</td>
<td>
6.6%
</td>
</tr>
<tr>
<td>
California 2:
</td>
<td>
1.2%
</td>
</tr>
<tr>
<td>
California 3:
</td>
<td>
0.5%
</td>
</tr>
<tr>
<td>
California 4:
</td>
<td>
10.1%
</td>
</tr>
<tr>
<td>
California 5:
</td>
<td>
3.6%
</td>
</tr>
</table>
当我最初加载页面时,poshytips 看起来不错,但是当我更新滑块(更新表格)时,一些提示会得到长的十进制字符串。上表来自 console.log 更新时应显示的内容。但是,值“1.2%”显示为“1.20000000000000002%。”从 csv 读取的输入值最初是精确到小数点后一位的字符串值。这就是我使用 d3 更新提示的方式(“maketip”函数只返回上面显示的表格):
state_path.transition()
.duration(1000)
.attr('title', function(d) {
return maketip(d,y);
})
.each("end", function(d) {
var $this = $(this);
$this.poshytip("update", $this.attr('title') );
});
有没有办法防止这种情况,或者有办法将此表指定为对象的内容?