首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用jQuery对UI/DOM进行排序

使用jQuery对UI/DOM进行排序
EN

Stack Overflow用户
提问于 2012-08-15 00:05:30
回答 1查看 164关注 0票数 0

所以,我已经在网上寻找帮助了。

我有一个条形图,其中条形图/值从左到右排序,最大值在左侧。基于用户交互,条形图/值可能改变,并且例如,中间条可能需要向左移动一个或多个点。这必须在运行中完成,而不是删除DOM元素,因为我需要为从左到右的移动设置动画。这是为了吸引用户,这对项目非常重要。

因此,我想我的问题是,既然您不能同时对DOM元素进行排序并对其进行动画处理,那么如何跟踪移动呢?我尝试过在页面加载时创建图形的初始索引,并在做出更改时更新索引。从逻辑上讲,我很难做到这一点。另外,如果要这样做,使用data属性进行索引的最佳方式是什么?这是不是只有HTML5,并且可能在较老的浏览器中不受支持,或者jQuery保留了一个与HTML5无关的缓存?

我是javascript/jQuery的新手。我想说我已经使用它两年了,但我真的只做过小的jQuery动画和验证。我真的很喜欢来自社区的一些意见!

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2012-08-15 03:31:28

你说得对,你不能通过排序来动画化元素。

诀窍是使用CSS属性在图形空间中定位条形图,例如。leftmargin-left

然后你就有了一些东西,当以正确的方式改变时,就会产生动画效果。

您所需要做的就是依次遍历每个栏,计算其新的CSS left/margin left属性,并使用jQuery的.animate()使其滑到新位置。

假设要使用margin-left定位条,并且条的高度也需要更改,则jQuery的一般形式为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$(".bars").each(function(i, bar) {
    var $bar = $(bar);
    var marginLeft = ........;//expression that calculates or fetches the new margin-left property for bar i
    var height = ........;//expression that calculates or fetches the new height property for bar i
    $bar.animate({
        'margin-left': marginLeft,
        'height': height
    );
})

不需要对任何内容进行排序或使用data属性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11962562

复制
相关文章
使用JAXP对XML文档进行DOM解析
   璐小编在之前学习BS的时候接触过XML(请戳:【XML】基础知识初步认识),后来在项目中我们也会遇到XML的配置文件,现在学习Java又遇到对XML的文档内容进行解析。看来对于XML的认知是不断加深的过程~
MonroeCode
2018/01/12
1.1K0
使用QCollat​​or对QStringList进行排序
  QCollator类根据排序规则算法比较字符串。以下例子是对QStringList进行数字优先且区分大小写比较排序。
Qt君
2023/03/17
2.9K0
使用QCollat​​or对QStringList进行排序
python 使用pandas对csv文件进行排序
背景:使用jmeter的插件PerfMon生成的结果数据,需要获取到cpu的TOP 10.
小白will
2019/01/28
8K0
python对字典进行排序
标准的python字典是无序的。即使对(键、值)对进行了排序,也无法以保留排序的方式将它们存储在dict中。
IT工作者
2022/07/07
1.9K0
Delphi对TStrings进行排序
最近在做一个Delphi的对接第三方支付的接口,接口签名机制模仿微信的签名方式,把参数按ascii码进行排序后再加上key进行md5的加密,因为调用接口的的Post里面的参数是TStrings类型的,但是在TStrings类型里面没有Sorted排序这个方法。所以我自己重写了一个函数用于处理这个。
Vaccae
2019/07/25
1.4K0
对map集合进行排序
今天做统计时需要对X轴的地区按照地区代码(areaCode)进行排序,由于在构建XMLData使用的map来进行数据统计的,所以在统计过程中就需要对map进行排序。
java思维导图
2018/11/30
1.8K0
对map集合进行排序
直播案例 | 使用PageRank对全球机场进行排序
PageRank 是谷歌公司起家的算法,在数据科学领域具有重要的地位和作用。PageRank 算法最初提出来用于利用网页之间的链接关系来对网页进行排序,从而优化搜索引擎的效果。如今,我们可以将 PageRank 算法用作网络中节点排序的一般算法。
数据酷客
2020/05/18
2.6K0
直播案例 | 使用PageRank对全球机场进行排序
LUA对Map进行排序
Lua中最常见的数据结构就是Table, 用Table表示Map很容易, 但早期Lua没有提供一个针对Map数据结构的排序方法,下面用Moonscript实现了一个Map型数据结构排序函数方法。
糖果
2019/11/20
3.4K0
使用asort函数对PHP数组进行升序排序
PHP是一门功能强大的语言,数组是PHP中十分常用的数据结构之一。在实际开发中,经常需要对数组进行排序。PHP提供了多个函数用于对数组进行排序,其中asort函数可以实现对数组进行升序排序。
很酷的站长
2023/08/25
5120
使用asort函数对PHP数组进行升序排序
使用Python对Excel数据进行排序,更高效!
表排序是Excel中的一项常见任务。我们对表格进行排序,以帮助更容易地查看或使用数据。然而,当你的数据很大或包含大量计算时,Excel中的排序可能会非常慢。因此,这里将向你展示如何使用Python对Excel数据表进行排序,并保证速度和效率!
fanjy
2022/11/16
5K0
使用Python对Excel数据进行排序,更高效!
使用 Python 对波形中的数组进行排序
假设我们采用了一个未排序的输入数组。我们现在将对波形中的输入数组进行排序。数组 'arr[0..n-1]' 以波形排序,如果 arr[0] >= arr[1] <= arr[2] >= arr[3] <= arr[4] >= .....
很酷的站长
2023/02/22
6.9K0
使用 Python 对波形中的数组进行排序
jQuery DOM操作
在目标对象前插入同级兄弟元素(不是头部,而是外面,和对象并列同级),参数和append类似
bamboo
2019/01/29
9960
jQuery DOM操作
jQuery DOM操作
对节点的操作 查找节点 查找节点可以直接利用jQuery选择器来完成,非常便利。 插入节点 jQuery提供了8种插入节点的方法。 序号 方法 描述 实例 1 append() 向每个匹配的元素内部
静默虚空
2018/01/05
2K0
jQuery UI Datepicker使用介绍
本博客使用Markdown编辑器编写 在企业级web开发过程中,日历控件和图表控件是使用最多的2中第三方组件。jQuery UI带的Datepicker,日历控件能满足大多数场景开发需要。本文就主要讨论jQuery UI Datepicker的使用,和中文本地化配置。 1.jQuery UI介绍 jQuery UI是一套基于jQuery控件和动画效果Javascript类库。可以用来构建交互式的互联网应用程序。最新版本1.10.4.基于jQuery 1.6+ jQuery UI官方网站 2.jQuery
八哥
2018/01/18
1.9K0
jQuery UI Datepicker使用介绍
jquery dom操作
var li=$("ul i:eq(1)") var li_txt=li.text() alert(li_txt)
用户5760343
2019/10/08
9010
jquery dom操作
C++ 对vector进行排序
title: C++ vector排序 tags: c++,vector,排序 grammar_cjkRuby: true --- 每次都要重复造轮子真的很累,所以用别人的吧。 目的:对vector进行排序 示例: 记得将 algorithm 这个头文件包括进去 #include <iostream> #include <vector> #include <algorithm> using namespace std; int main(void) { vector <int> a
marsggbo
2018/01/23
8.5K0
Python中对list进行排序
很多时候,我们需要对List进行排序,Python提供了两个方法 对给定的List L进行排序, 方法1.用List的成员函数sort进行排序 方法2.用built-in函数sorted进行排序(从2.4开始) 这两种方法使用起来差不多,以第一种为例进行讲解: 从Python2.4开始,sort方法有了三个可选的参数,Python Library Reference里是这样描述的 cmp:cmp specifies a custom comparison function of two arguments (iterable elements) which should return a negative, zero or positive number depending on whether the first argument is considered smaller than, equal to, or larger than the second argument: "cmp=lambda x,y: cmp(x.lower(), y.lower())" key:key specifies a function of one argument that is used to extract a comparison key from each list element: "key=str.lower" reverse:reverse is a boolean value. If set to True, then the list elements are sorted as if each comparison were reversed.In general, the key and reverse conversion processes are much faster than specifying an equivalent cmp function. This is because cmp is called multiple times for each list element while key and reverse touch each element only once. 以下是sort的具体实例。 实例1: >>>L = [2,3,1,4] >>>L.sort() >>>L >>>[1,2,3,4] 实例2: >>>L = [2,3,1,4] >>>L.sort(reverse=True) >>>L >>>[4,3,2,1] 实例3: >>>L = [('b',2),('a',1),('c',3),('d',4)] >>>L.sort(cmp=lambda x,y:cmp(x[1],y[1])) >>>L >>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)] 实例4: >>>L = [('b',2),('a',1),('c',3),('d',4)] >>>L.sort(key=lambda x:x[1]) >>>L >>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)] 实例5: >>>L = [('b',2),('a',1),('c',3),('d',4)] >>>import operator >>>L.sort(key=operator.itemgetter(1)) >>>L >>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)] 实例6:(DSU方法:Decorate-Sort-Undercorate) >>>L = [('b',2),('a',1),('c',3),('d',4)] >>>A = [(x[1],i,x) for i,x in enumerate(L)] #i can confirm the stable sort >>>A.sort() >>>L = [s[2] for s in A] >>>L >>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)] 以上给出了6中对List排序的方法,其中实例3.4.5.6能起到对以List item中的某一项 为比较关键字进行排序. 效率比较: cmp < DSU < key 通过实验比较,方法3比方法6要慢,方法6比方法4要慢,方法4和方法5基本相当 多关键字比较排序: 实例7: >>>L = [('d',2),('a',4),('b',3),('c',2)] >>> L.sort(key=lambda x:x[1]) >>> L >>>[('d', 2), ('c', 2), ('b', 3), ('a', 4)] 我们看到,此时排序过的L是仅仅按照第二个关键字来排的,如果我们想用
py3study
2020/01/09
2.4K0
使用Comparable和Comparator对Java集合对象进行排序
在现实生活中,我们可能会遇到需要对集合内的对象进行排序的场景,比如,有一个游戏得分排行榜,如先按照分数的高低由高到低排序,在分数相同的情况下,按照记录创建的时间由早到新的顺序排序。
孟君
2019/09/09
5.5K0
xml解析技术概述和使用Jaxp对xml文档进行dom解析
用dom和sax对xml文档进行解析,可以使用已开发的xml解析开发包,我们直接调用即可。xml解析开发包有:Jaxp(最差)、Jdom(一般)、dom4j(最好)。
MonroeCode
2018/01/12
1.1K0
jQuery操作DOM元素
作为一个后端程序员,也是要和前端页面打交道的。最常见的场景莫过DOM元素操作和前端页面使用AJAX向服务器发送请求。 实现上述两个功能当然可以使用原生js来完成,但在实际开发过程中很少这样做,通常会使用一些别人封装好的js库来辅助我们的工作,jQuery就是这些辅助库中的一员。
雪飞鸿
2018/09/05
2.7K0

相似问题

jQuery根据数字对DOM进行排序

15

jQuery UI可排序-对图像进行排序

20

使用jQuery UI同时对多个项目进行排序

11

使用jQuery UI排序方法对多个表行进行排序

23

使用jQuery UI可排序对固定占位符目标进行排序

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文