【发布时间】:2014-11-11 16:36:25
【问题描述】:
给定一个产品槽图块的着陆页,我的目标是根据优先级值对这些图块重新排序。
我正在使用以下调用返回具有缝纫类和显示类的瓷砖数组:
$(".show.sewing.tile-wrap").parent();
现在我想对这个返回的数组进行排序,按每个图块的 data-prioritysort 属性中的值排序。
这是我典型的 HTML 产品槽图块:
<div class="c3 tile-96 border" data-prioritysort="11" >
<div class="tile-wrap show sewing clearfix">
<div class="slug">
<div class="c3 tile-slug-1 "></div>
<div class="c3 tile-slug-2 "></div>
<div class="c3 tile-slug-3 "></div>
</div>
<div class="c12 proofing"></div>
<div class="slot-cta">
<h2><a href="TBD?icn=TBD&ici=96"
title="25% Off Description."
alt="25% Off Description.">
<!-- 25% Off--></a></h2>
<p><!-- Description.--></p>
</div>
</div>
</div>
edit:为了明确目标,这种排序将在 document.ready 中实现一次。我已经实现了在我的第一篇文章的回复中找到的第二个解决方案,但由于某种原因,没有显示类的图块显示并排序到顶部。
【问题讨论】:
-
您只是想要对数组进行排序,还是想要对 DOM 元素也进行排序?以下jsfiddle有什么用吗? jsfiddle.net/ve7eg6pj
-
DOM 元素。目标是按数据属性设置的优先级顺序显示图块。该页面有 96 个磁贴,这些磁贴分成 4 行。通过单击缝纫类别按钮来调用过滤后的图块的显示。如果一件商品售罄,则移除展示类。为了提高表现不佳者的可见度,磁贴被赋予较低的数字以将其移至左上角。这在过去是通过生产团队编辑语义标记来实现的。我更喜欢操纵 DOM。
-
顺便说一句,感谢您花时间设置小提琴。这有点帮助,但我还不能用你的例子解决这个问题。
-
不客气。不知道为什么你不能解决你的问题,StackOverflow 充满了这类“如何做我做这件事”类型的问题。检查这个小提琴:jsfiddle.net/j248k6z9 以及这些答案:stackoverflow.com/search?q=jquery+sort+by+attribute
-
我的困难在于时间紧迫,并且没有足够的理解来快速解决这个问题。我一直在考虑您之前的示例和其他一些示例,并且开始掌握如何在我的页面中实现它。堆栈溢出是一个充满慷慨的人的惊人资源。衷心感谢您分享您的时间和知识。
标签: javascript jquery arrays sorting