• D3.js 其他选择元素方法


    在上一节中,已经讲解了 select 和 selectAll,以及选择集的概念。本节具体讲解这两个函数的用法。

    假设在 body 中有三个段落元素:

    <p>Apple</p>
    <p>Pear</p>
    <p>Banana</p>

    现在,要分别完成以下四种选择元素的任务。

    一、选择第一个 p 元素

      使用 select ,参数传入 p 即可,如此返回的是第一个 p 元素。

    var bodys = d3.select("body");
    var p = bodys.select("p");    
    p.style("color","red");

       结果如下图,被选择的元素标记为红色。

        n211

    二、选择三个元素

      使用 selectAll 选择 body 中所有的 p 元素。

    var p = body.selectAll("p");
    p.style("color","red");

      结果如下:

        n212

    三、选择第二个 p 元素

      有不少方法,一种比较简单的是给第二个元素添加一个 id 号。

    <p id="myid">Pear</p>

       然后,使用 select 选择元素,注意参数中 id 名称前要加 # 号。

    var p2 = body.select("#myid");
    p2.style("color","red");

     结果如下:

      n213

     

     四、选择后两个 p 元素

      给后两个元素添加 class,

    <p class="myclass">Pear</p>
    <p class="myclass">Banana</p>

       由于需要选择多个元素,要用 selectAll。注意参数,class 名称前要加一个点。

    var p = body.selectAll(".myclass");
    p.style("color","red");

      结果如下:

        n214

      关于 select 和 selectAll 的参数,其实是符合 CSS 选择器的条件的,即用“井号(#)”表示 id,用“点(.)”表示 class。

      此外,对于已经绑定了数据的选择集,还有一种选择元素的方法,那就是灵活运用 function(d, i)。我们已经知道参数 i 是代表索引号的,于是便可以用条件判定语句来指定执行的元素。

    if(i==0){  
      //如何如何 }else if(i == 1){ //如何如何 }
  • 相关阅读:
    SQL2005四个排名函数(row_number、rank、dense_rank和ntile)的比较
    LINQ to List泛型的几种简单查询
    sql语句精选
    C#利用QrCode.Net生成二维码(Qr码)
    LINQ to XML CRUD,并且封装为DAL方法
    vim编辑器
    去年的烟花特别多……
    年初七
    活死人黎明 Dawn of the Dead
    在碟片里奔驰我的看碟人生
  • 原文地址:https://www.cnblogs.com/LO-ME/p/5382957.html
Copyright © 2020-2023  润新知