d3选择集合的操作方法(四):sort与order
来源:互联网 发布:202z.com最新域名 编辑:程序博客网 时间:2024/06/05 17:34
sort方法只能对带有数据的元素进行排序,因此如果对页面已有的元素但没有绑定数据的元素进行排序,则需要进行预处理,order能将已排序的元素但已改变顺序的元素(如通过raise与lower方法)恢复为排序初始状态,并且性能表现更佳。
依旧假定页面中存在的html元素如下:
<ul class="list-group" id="list-group"> <li class="list-group-item">0002</li> <li class="list-group-item">0001</li> <li class="list-group-item">0003</li></ul>
说明sort与order使用方法的示例代码如下:
var items = d3.select("#list-group") .selectAll(".list-group-item") // 对元素进行预处理 .each(function(d) { // 为已有的元素添加数据 if(d === undefined) { d3.select(this).datum({ index : parseInt(this.textContent) }) } }) // 只能比较数据,并且会改变数据相关的DOM .sort(function(a, b) { // 逆序 return b.index - a.index; })
执行完上面的代码后,现在html元素已经是逆序排列了,如下:
<ul class="list-group" id="list-group"> <li class="list-group-item">0003</li> <li class="list-group-item">0002</li> <li class="list-group-item">0001</li></ul>
通过raise与lower改变html元素的排序,然后再用order将排序恢复,如下:
// 将第二个元素提前items.filter(function(d) { return d.index === 2}).lower();// 又恢复为逆序了,速度极快items.order();
1 0
- d3选择集合的操作方法(四):sort与order
- d3选择集合的操作方法(一):select与selectAll
- d3选择集合的操作方法(二):each与call
- d3选择集合的操作方法(三):lower与raise
- d3选择集合的操作方法(五):insert与append
- 【Hibernate】Hibernate的集合映射与sort、order-by属性
- 【Hibernate】Hibernate的集合映射与sort、order-by属性
- bernate的集合映射与sort、order-by属性
- D3.JS 基于javascript的图表展示库<四>----基本元素选择与Table
- d3选择集合核心方法(二):data与datum
- Order By与Sort
- 集合CollectionUtils的操作方法
- 集合CollectionUtils的操作方法
- d3.js——选择集与数据的绑定
- d3的brush区域选择
- hive 中order by 与 sort by 的区别
- ArcGIS字段选择的操作方法
- JSTL 对集合的操作方法
- 算法竞赛入门经典(第三章)
- 个人理解的前端工程师能力要求
- CDH安装报错Hive must also be configured with YARN
- 开启记录之旅
- 英语口语练习
- d3选择集合的操作方法(四):sort与order
- nyoj 苹果 01背包
- [leetcode] 127. Word Ladder
- LCA模板在线 POJ 1986 Distance Queries
- 不同版本Notification的显示问题(最简单的方法是把目标版本更改为4.4)
- 在没SQL Server数据库情况下怎么打开.MDF文件?
- jquery json合并
- web前端知识补充记录
- iOS开发-OC中属性创建需要注意的地方(property实例变量的创建和标准存取方法)