繁体   English   中英

用jQuery生成无序列表

[英]Generating an unordered list with jQuery

有一个无序列表 ,在IE6-7中无法正常工作,我想用jQuery函数代替它

因此,我们有:

  • 简单列表,带有特殊的#id(ul id =“”)
  • 一些<li>标签
  • <li>有一些特殊标记,用于显示行号(或您希望的其他名称)。

我需要一个函数,该函数将从无序列表的开始到末尾为每行提供一个唯一的数字。 (UL)

<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> ');
    });
});

参考这篇文章, 使用jQuery生成无序列表

有没有一种方法可以使用ul重新开始为另一个列表重新计数? 随着上面的代码,这就是我得到的! <ul> <li> test <li> test <li> test <ul/>

产量
1.测试
2.测试
3.测试

第二ul名单

<ul> <li> test <li> test <li> test <ul/>

产量
4.测试
5.测试
6.测试

而不是从第二个ul标签开始以1. 2. 3.开始,它继续使用第一个ul 5. 6. 7.进行计数。

因此,是否可以重置计数并再次为另一个ul标签加注星标?

我认为这应该起作用,不是吗?

$(function() {
    $('#the_ul_ID li').each(function(i) { $(this).attr('rel',++i); });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM