d3 version 7.3.0
d3主要通过select , selectAll实现选择元素,参照原生js的querySelector querySelectorAll
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>d3</title><script src="https://cdn.bootcdn.net/ajax/libs/d3/7.3.0/d3.js"></script></head><body><div id="root"></div><div id="target"></div><div class="box"><p>111</p><p class="p2">222</p><p ckass="p3">333</p><p ckass="p4">444</p><p ckass="p4">555</p></div><script>const root = d3.select('#root')root.text('this is d3')// d3.select('p') // 只选择一个// .style('background', '#f90')const el = d3.select('p').append('span') // append返回的不是当前dom p,而是子元素.text('I am in span'); // 文本添加在spanconsole.log('el', el)d3.select('body')// insert(newElement, targetElement) 返回插入的元素,如果 tatgetElement没有找到,就默认为 body.insert('p', '#target') // insert插入.text('I am insert new here').style('color', 'pink')// d3.selectAll('p') // 选择全部,不需要遍历,直接对整体进行操作// .style('background', '#90f')// 删除元素// d3.select('#target').remove() //先选中然后直接remove// attr,style,text,attr常用来修改svg节点的属性let dataset = ['javascript', 'css', 'html']d3.select('.box').selectAll('p').data(dataset).text((d, i) =>{console.log(100, d, i)return i+ ' : ' + d;});</script></body></html>
