• Item1
  • Item2
  • Item1
  • Item2
  • 首页  >  文章  >  web前端  >  如何在 JavaScript 中动态添加项目列表之间的逗号?

    如何在 JavaScript 中动态添加项目列表之间的逗号?

    WBOY
    WBOY转载
    2023-09-08 17:33:021612浏览

    如何在 JavaScript 中动态添加项目列表之间的逗号?

    我们可以使用CSS“::before”伪元素在每个列表项之前动态添加一个逗号,第一个列表项除外。通过定位列表项并使用“content”属性,我们可以在列表项的内容之前插入逗号。此外,我们可以使用“:not(:first-child)”伪类来确保只有非第一个列表项才添加逗号。

    假设我们有以下 HTML DOM:

    <ul class="dynamic-list">
       <li>Item 1</li>
       <li>Item 2</li>
       <li>Item 3</li>
       <li>Item 4</li>
    </ul>
    

    我们将在本文中讨论两种可用于实现相同最终目标的不同方法:在每个列表项(最后一项除外)后添加逗号。

    因此,让我们逐一讨论每种方法。

    方法 1:使用 CSS

    使用 CSS 在项目列表之间动态添加逗号的一种方法是在列表项目上使用 ::before 伪元素。

    在每个 li 的 ::before 伪元素内(除了第一个 li 子元素),我们将添加一个逗号,这样就可以解决问题了。

    这样做的代码是 -

    .dynamic-list li {
      display: inline-block;
    }
    .dynamic-list li::before {
      content: ", ";
    }
    .dynamic-list li:first-child::before {
      content: "";
    }
    

    这将在每个列表项之前添加一个逗号和空格,第一个列表项除外。第一项前面没有内容,因此前面没有逗号。

    方法 2:使用 JavaScript

    或者,您也可以使用 javascript 或 jquery 在列表项之间动态添加逗号。在这里,我们将使用纯 JavaScript 在项目列表之间动态添加逗号。

    执行此操作的代码将是 -

    var list = document.getElementById("dynamic-list");
    var items = list.getElementsByTagName("li");
    for (var i = 0; i < items.length; i++) {
       if (i > 0) {
          items[i].innerHTML = ", " + items[i].innerHTML;
       }
    }
    

    此代码首先通过 ID 选择列表,然后获取所有列表项。然后它循环遍历每个项目并检查它是否不是第一个项目,如果不是,它会在项目内容之前添加一个逗号和空格。

    示例

    最后一段代码是 -

    <!DOCTYPE html>
    <html>
    <head>
       <title>Comma Separated List</title>
    </head>
    <style>
       li {
          display: inline-block;
          color: black;
       }
    </style>
       <body>
          <ul id="dynamic-list">
             <li>Item 1</li>
             <li>Item 2</li>
             <li>Item 3</li>
             <li>Item 4</li>
          </ul>
          <script>
             var list = document.getElementById("dynamic-list");
             var items = list.getElementsByTagName("li");
             for (var i = 0; i < items.length; i++) {
                if (i > 0) {
                   items[i].innerHTML = ", " + items[i].innerHTML;
                }
             }
          </script>
       </body>
    </html>

    以上是如何在 JavaScript 中动态添加项目列表之间的逗号?的详细内容。更多信息请关注PHP中文网其他相关文章!

    声明:
    本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除