用jQuery实现个性有序列表

周二,2009 三 24 14:43:54

本文转载自: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;
}

最终效果:

   Await |  前端交互 |  浏览:1,326  

这篇文章已有 3 位网友发表了评论  

  1. 流年观影 说:

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

  2. bolo 说:

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

  3. aunsen 说:

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

发表新的评论

表情
icon_wink.gif icon_neutral.gif icon_mad.gif icon_twisted.gif icon_smile.gif icon_eek.gif icon_sad.gif icon_rolleyes.gif icon_razz.gif icon_redface.gif icon_surprised.gif icon_mrgreen.gif icon_lol.gif icon_idea.gif icon_biggrin.gif icon_evil.gif icon_cry.gif icon_cool.gif icon_arrow.gif icon_confused.gif icon_question.gif icon_exclaim.gif 



注意:
1、本站启用了审核机制,你的留言可能稍后才会显示,请不要重复提交,谢谢。
2、留言时的头像是Gravatar提供的服务。想设置的看这里
3、评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。

goto-top