使用 javascript 或 jquery 在 dom 中插入元素

发布于 2024-11-26 06:06:01 字数 291 浏览 3 评论 0原文

我使用此脚本将三个不同的 span 插入到第一个、第二个和第三个 li 中。

$("ul li:eq(0)").prepend("<span>1</span>");
$("ul li:eq(1)").prepend("<span>2</span>");
$("ul li:eq(2)").prepend("<span>3</span>");

有没有办法重构这段代码以消除冗余?

I am using this script to insert three different span's to the 1st, 2nd and 3rd lis.

$("ul li:eq(0)").prepend("<span>1</span>");
$("ul li:eq(1)").prepend("<span>2</span>");
$("ul li:eq(2)").prepend("<span>3</span>");

Is there a way to refactor this code to remove the redundancy?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

对你而言 2024-12-03 06:06:01

如果您想对那里的所有 li 标签执行此操作:

$("ul li").each(function(i) {
    $(this).prepend("<span>" + (i + 1) + "</span>");
});

如果有超过三个 li 标签,并且您只想对前三个执行此操作:

$("ul li:lt(3)").each(function(i) {
    $(this).prepend("<span>" + (i + 1) + "</span>");
});

在此处工作 jsFiddle: http://jsfiddle.net/jfriend00/qhgad/

If you want to do it to all li tags that are there:

$("ul li").each(function(i) {
    $(this).prepend("<span>" + (i + 1) + "</span>");
});

If there are more than three li tags and you only want it done to the first three:

$("ul li:lt(3)").each(function(i) {
    $(this).prepend("<span>" + (i + 1) + "</span>");
});

Working jsFiddle here: http://jsfiddle.net/jfriend00/qhgad/

苏佲洛 2024-12-03 06:06:01

或者你可以这样做

  $("ul li").prepend( function(index, html){
               return ("<span>" + (index+1) + "</span>");
   });

Or you can do this like this

  $("ul li").prepend( function(index, html){
               return ("<span>" + (index+1) + "</span>");
   });
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文