我正在使用 jQuery 来拯救有限的 CMS 设置。
我需要按字母顺序对有序列表进行排序,但随后我还需要能够将“特殊”列表项放在列表顶部,并再次仅对那些按“可选”数值降序的特殊项进行排序。
例如,如果这是我的原始标记:
<ul>
<li class=" ">C</li>
<li class=" ">A</li>
<li class=" ">B</li>
<li class=" ">E</li>
<li class=" ">D</li>
<li class="3">Z</li>
<li class="6">Y</li>
<li class="14">X</li>
</ul>
...我希望 jQuery 对其进行排序,因此这将是生成的 DOM 内容:
<ul>
<li class="14">X</li>
<li class="6">Y</li>
<li class="3">Z</li>
<li class=" ">A</li>
<li class=" ">B</li>
<li class=" ">C</li>
<li class=" ">D</li>
<li class=" ">E</li>
</ul>
如果无法按类值排序或过于复杂,也许我可以使用以下标记结构:
<ul>
<li><span class="numerical">3</span><span class="alphabetical">B</span></li>
</ul>
有谁知道什么 jQuery 代码可以让我这样做?我是否需要运行一系列嵌套的“每个”操作以及以某种方式比较值的“insertAfter”和“insertBefore”函数?我认为有更好的方法,但我不确定从哪里开始我的研究。
我愿意接受任何和所有建议。与此同时,我也会尝试自己解决这个问题,但我仍然是一个 jQuery 新手,所以我怀疑我是否会自己找到正确的代码:)
谢谢!!