【发布时间】:2013-06-26 16:49:41
【问题描述】:
我无法将 ul 列表分成 5 个部分。该列表类似于:
<ul class="designer-list">
<li>7 title</li>
<li>alpha</li>
<li>charlie</li>
<li>charles</li>
<li>lima</li>
</ul>
使用这个 jQuery,我将第一个字符放在顶部
$(document).ready(function(){
var lastCharacter = '';
var list = $('ul.designer-list li');
list.each(function() {
var $this = $(this);
var firstCharacter = $this.text().trim().charAt(0);
if(firstCharacter != lastCharacter) {
$this.before('<li class="first-character"><span>'+firstCharacter+'</span></li>');
lastCharacter = firstCharacter;
}
});
});
这使得: 7 7 标题 一个 α C 查理 查尔斯 大号 利马
效果很好,但我想将列表分成 5 列。如果我尝试类似:
$this.before('</ul></li><li class="first-character"><span>'+firstCharacter+'</span><ul>');
浏览器关闭标签。有人有想法吗?
我想要以下输出:
7 E K S W
List List List List List
A F L T X
List List List List List
【问题讨论】:
-
你希望得到什么样的 html 结构?
-
我认为这个问题/答案非常接近您想要实现的目标:stackoverflow.com/questions/9886676/… 主要问题还在于 html 部分无效,因为它以结束标记开头, jQuery 不太喜欢。
标签: jquery