d3.js实现enter()添加元素d(数据绑定-data binding)

来源:互联网 发布:mac锁屏时钟 编辑:程序博客网 时间:2024/05/16 04:42

enter用法

假设<body>中已经存在某一个元素<p>, 如果用

d3.select("body").selectAll("p").data(somedatarray).enter().append("p") 

来再添加一个<p>元素,那么是不会实现这个效果的,它只会覆盖原来的<p>. 也就是说,如果想在保留原来的<p>的基础上再添加三个<p>, 那么实际上只会显示,三个,不是四个,因为第一个被覆盖了。那么。如何解决这个问题呢?

解决方法

实际上,用d3的时候,加了一个限定,selectAll, 就是先选中已有的<p>.如果不选择已有的<p>不就行了吗?
所以,

d3.select("body").data(somedataarray).append("p")

就可以了。这就会保留原来的,另外再添加三个<p>.

其实也算是把数据绑定到dody中吧。

那么exist()是不是也可以这样用呢? 哈哈哈。


0 0
原创粉丝点击