有无序列表,在IE6-7中无法正常工作,我想用jQuery函数替换它。
所以,我们有:
<li>
代码<li>
中的一些特殊标记,用于显示行数(或其他内容,如您所愿)。我需要一个函数,它会为每一行提供一个唯一的编号,从无序列表的开头到结尾。 (UL)
答案 0 :(得分:2)
<ul><li>test</li><li>test</li><li>test</li><li>test</li><li>test</li><li>test</li><li>test</li></ul>
$(document).ready(function(){
var increment=3;
var start=8;
$("ul").children().each(function(i) {
$(this).prepend('<tag>'+(start+i*increment).toString()+'.</tag>');
});
});
结果:
* 8. test
* 11. test
* 14. test
* 17. test
* 20. test
* 23. test
* 26. test
编辑:没有增量和更短:
$(document).ready(function(){
$("ul").children().each(function(i) {
$(this).prepend('<b>'+(1+i).toString()+'.</b> ');
});
});
答案 1 :(得分:0)
我认为这应该有效,不是吗?
$(function() {
$('#the_ul_ID li').each(function(i) { $(this).attr('rel',++i); });
});
答案 2 :(得分:0)
参阅此帖Generating an unordered list with jQuery
有没有办法再次使用ul开始计算另一个列表?
有了上面的代码,这就是我得到的!
<ul>
<li> test
<li> test
<li> test
<ul/>
输出
试验
2.测试
3.测试
第二个ul列表
<ul>
<li> test
<li> test
<li> test
<ul/>
输出
4.测试
5.测试
6.测试
而不是使用1. 2. 3.继续使用第一个ul 5. 6. 7开始计算第二个ul。
那么是否可以重置计数并将其重新标记为另一个ul标签?