selection.classed

   selection.classed(name[, value])    //添加或移除CSS类

这个操作是用来设置class属性值得便捷程序。它能识别class属性是一个按照空格分隔的标记集合。这样它就能使用classList(如果有的话)来方便地添加、移除和切换CSS类。

如果value属性被指定,不论是否指定类都会与选定元素相结合。如果value是一个常量且其值为真,那么所有的元素都会被分配指定的类(还没分配的话)。如果其值为假,那么就会移除选中元素的class(已经分配过)。如果value是一个函数,那么这个函数会为每个选中的元素(按顺序)计算。入参是当前数据元素d和当前索引i,以及代表当前DOM元素的this上下文。这个函数的返回值接下来用来分配或者不分配每个元素的class。

如果你想一次设置多个class可以使用一个对象,文字如同:selection.classed({'foo': true, 'bar': false}),或者使用以空格分隔的class列表形如:selection.classed('foo bar', true)。

如果value没有被指定,当且仅当选择中首个非空值有指定的class就会返回true。一般来说,只有当你知道选择中恰好包含一个元素时才有用。

results matching ""

    No results matching ""