用jQuery实现个性有序列表

本文转载自:http://iinterest.net/blog/2009/02/11/jquery-sequential-list/

当遇到有序列表的时候我们一般会用到ol+li这样的标签,因为除了符合语义外其默认样式就有序号标识,这样就免去了我们手动添加的麻烦,但由于浏览器兼容性问题(尤其是IE…)使它的实用性大打折扣,所以要实现有序列表更多的时候是用程序来解决。

但通过jQuery我们完全可以在不改变现有结构的情况下打造一个个性化的有序列表.

先来看Demo

实现起来也很简单,看看第一个例子,首先是载入javascript代码

<script type=“text/javascript” src=“js/jquery-1.3.js”></script>
<script type=“text/javascript”>
$(document).ready(function(){
  
    $(“#step li”).each(function (i) {
        i = i+1;
        $(this).addClass(“item”+i);
   });
</script>

经过jQuery处理后,原来的代码将发生变化,jQuery为每个li增加了一个有序的不同类:

有了类之后就好办了,为每个类定义不同的样式表(我为item1,item2…增加了不同的背景图片):

#step .item1 {
 
background: url(step1.png) no-repeat;
}
#step .item2 {
 
background: url(step2.png) no-repeat;
}
#step .item3 {
 
background: url(step3.png) no-repeat;
}

最后的效果:

当然除了图片也可以增加任意你想要的代码,比如第三个例子就是在li中增加一个 容器

<script type=“text/javascript”>
 
    $(“#commentlist li”).each(function (i) {
        i = i+1;
        $(this).prepend(‘<span class=”commentnumber”> #’+i+‘<
/span>’);
   });
 
});
<
/script>

jQuery处理过程:

51737245200902111307463352842657555_003

样式表:

#commentlist li {
 
position: relative;
}
 
#commentlist .commentnumber {
 
position: absolute;
 
right: 0;
 
top: 8px;
}

最终效果:

GOTOP3 条评论 To 用jQuery实现个性有序列表

  1. 流年观影 说道:

    之前在webdesignwall上面见到这篇文章,原本打算翻译,但一忙就忘了。哈,想不到博主快走一步,那我就不翻译了。webdesignwall解决了我遇到的很多问题

  2. bolo 说道:

    这个对模板个性化太有用了

  3. aunsen 说道:

    很高级啊,现在JS大行其道啊!

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

无觅相关文章插件,快速提升流量