使用jQuery创建带有样式编号的编号列表?
我需要在Wordpress站点中创建一个看起来像是带有彩色数字的有序列表 我知道如何用html手工制作。有几种方法,但假设我通过无序列表创建一个编号项目,例如使用jQuery创建带有样式编号的编号列表?,jquery,css,html-lists,Jquery,Css,Html Lists,我需要在Wordpress站点中创建一个看起来像是带有彩色数字的有序列表 我知道如何用html手工制作。有几种方法,但假设我通过无序列表创建一个编号项目,例如 1。Lorem ipsum dolor sit amet 我会简单地删除CSS列表样式的项目符号:无 然而,我在这个网站上有很多这样的列表,我不想编辑每个列表的html;我宁愿用Wordpress的标准OL来管理它们,这样不懂HTML的用户就可以创建它们 我想我会用左边距和负文本缩进来“挂起”数字 在jQuery中处理这个问题最有效的方法
1。Lorem ipsum dolor sit amet
我会简单地删除CSS列表样式的项目符号:无
然而,我在这个网站上有很多这样的列表,我不想编辑每个列表的html;我宁愿用Wordpress的标准OL来管理它们,这样不懂HTML的用户就可以创建它们
我想我会用左边距和负文本缩进来“挂起”数字
在jQuery中处理这个问题最有效的方法是什么?看起来你在CSS方面做得很好,因此你正在寻找如何将
span
放在列表的开头
如果是:
$("ol > li").each(function() {
var $this = $(this);
$this.prepend("<span>" + ($this.index() + 1) + " </span>");
});
|
旁注:如果您可以避免使用
span
,而是使用伪选择器:before
或类似的,那么在支持它的浏览器上可能会更好。如果您在一个页面上有多个OL(如果只有一个列表,也可以使用)。也适用于嵌套列表:
/* loop over each list so indexing of LI is done on per list basis*/
$("ol").each(function(){
$(this).children('li').each(function(index) {
$(this).prepend("<span>" + (index+ 1) + " </span>");
});
});
/*在每个列表上循环,以便在每个列表的基础上对LI进行索引*/
$(“ol”)。每个(函数(){
$(this).children('li')。每个(函数(索引){
$(this.prepend(“+(index+1)+”);
});
});
可以使用每个的第一个参数保存对索引()的多个调用。。。啊,除了刚刚意识到为什么。。。你只是在编索引siblngs@charlietfl:否,传递给每个的索引将是集合中的索引。$this.index()
返回的值将是相对于同级的索引。因此,如果您有多个ol
,这很重要。对。这就是为什么我更新了我的评论。这很有效。谢谢
/* loop over each list so indexing of LI is done on per list basis*/
$("ol").each(function(){
$(this).children('li').each(function(index) {
$(this).prepend("<span>" + (index+ 1) + " </span>");
});
});