我有点超出我的深度,我希望这实际上是可能的.
我希望能够调用一个按字母顺序对列表中所有项目进行排序的函数.
我一直在浏览jQuery UI进行排序,但似乎不是这样.有什么想法吗?
我正在尝试创建一个有点复杂的排序功能,既不使用div也不使用列表.不幸的是,两个小时的谷歌搜索没有帮助我.
这是我的HTML的基本设置:
<div id="all_elements">
<!-- one element -->
<div class="element">
<div class="wrapper">
<a href="/" title="links">
<img src="/img/image.jpg" border="0" alt="image" class="image" /></a>
<div class="details">
<h3><a href="/" title="title">Name (Sort Argument 1)</a></h3>
<div class="title"><a href="/" title="title">Title (Sort Argument 2)</a></div>
<div class="year">2010 (Sort Argumentt 3)</div>
<div class="country">Great Britain (Sort Argument 4)</div>
</div><!-- details -->
</div><!-- wrapper -->
</div><!-- element -->
</div> <!--all_elements-->
Run Code Online (Sandbox Code Playgroud)
设置有点复杂,但基本上.element是需要根据h3,div.title,div.year或div.country的内容按字母顺序排序的元素.因此,用户将能够按名称,按年份,按国家/地区或按标题查看网站内容.
我有一个来自网站的jQuery片段,但我尝试告诉它使用例如h3的内容进行排序的所有尝试都失败了.现在它几乎随机排序.
jQuery.fn.sort = function() {
return this.pushStack([].sort.apply(this, arguments), []);
};
function sortAscending(a, b) {
return a.innerHTML > b.innerHTML ? 1 : …Run Code Online (Sandbox Code Playgroud) 我正在尝试单独学习Javascript,所以请不要建议使用库或jQuery.
我有一个div列表,我希望用户能够按其值对它们进行排序.例如:
<button onclick="sort();">Test</button>
<div class="num">2</div>
<div class="num">3</div>
<div class="num">8</div>
<div class="num">1</div>
Run Code Online (Sandbox Code Playgroud)
JS:
function sort(){
var elements = document.getElementsByClassName("num");
elements.sort();
}
Run Code Online (Sandbox Code Playgroud)
我找不到对这个问题的直接回答.是否getElementsByClassName返回具有该名称的每个div的值的数组?那么,当数组被排序时,我如何反映div中的变化?