Javascript 添加一个<;部门>;5日前<;李>;并添加另一个</部门>;在最后一次<;李>;从名单上?

Javascript 添加一个<;部门>;5日前<;李>;并添加另一个</部门>;在最后一次<;李>;从名单上?,javascript,list,Javascript,List,我怎样才能让它成为可能,比如说我有一个17项的无序列表。现在我想在第5项之前添加一个div标记,结束div将位于列表的最后一项之后。结果会像这样 <ul> <li><img src="http://static.flickr.com/66/199481236_dc98b5abb3_s.jpg" width="75" height="75" alt="" /></li> <li><img

我怎样才能让它成为可能,比如说我有一个17项的无序列表。现在我想在第5项之前添加一个div标记,结束div将位于列表的最后一项之后。结果会像这样

      <ul>
        <li><img src="http://static.flickr.com/66/199481236_dc98b5abb3_s.jpg" width="75" height="75" alt="" /></li>
        <li><img src="http://static.flickr.com/75/199481072_b4a0d09597_s.jpg" width="75" height="75" alt="" /></li>
        <li><img src="http://static.flickr.com/57/199481087_33ae73a8de_s.jpg" width="75" height="75" alt="" /></li>
        <li><img src="http://static.flickr.com/77/199481108_4359e6b971_s.jpg" width="75" height="75" alt="" /></li>
<div>
        <li><img src="http://static.flickr.com/58/199481143_3c148d9dd3_s.jpg" width="75" height="75" alt="" /></li>
        <li><img src="http://static.flickr.com/72/199481203_ad4cdcf109_s.jpg" width="75" height="75" alt="" /></li>
        <li><img src="http://static.flickr.com/58/199481218_264ce20da0_s.jpg" width="75" height="75" alt="" /></li>
        <li><img src="http://static.flickr.com/69/199481255_fdfe885f87_s.jpg" width="75" height="75" alt="" /></li>
        <li><img src="http://static.flickr.com/60/199480111_87d4cb3e38_s.jpg" width="75" height="75" alt="" /></li>
        <li><img src="http://static.flickr.com/70/229228324_08223b70fa_s.jpg" width="75" height="75" alt="" /></li>
</div>
      </ul>
我不能硬编码,因为这个列表将由php函数生成。有什么办法吗?多谢各位


添加:我正试图隐藏div中的那些项目。在某处会有另一个按钮,这样当您单击这些项目时就会显示出来。

看起来您试图将一些常见功能(或者样式?)与该
    中除第一个之外的所有4个项目相关联。也许您可以使用
    属性或其他什么

    我不知道你到底想实现什么,但类似这样的事情可能会有所帮助:

    var ul = //...
    var items = ul.getElementsByTagName("li");
    for (var i = 4; i < items.length; i++) {
        // do whatever you need to do here, e.g.:
        items[i].className += " foo";
    }
    
    然后只需迭代返回的数组即可执行显示/隐藏逻辑

    可以预见的是,我也会建议你研究一下(不知道你是否能够使用它)。这会使这类事情变得容易得多。例如,您可以通过以下方式实现上述所有功能:

    $("ul>li:gt(3)").show();
    

    看起来您正试图将一些常见功能(或者样式?)与该
      中除第一个之外的所有4项相关联。也许您可以使用
      属性或其他什么

      我不知道你到底想实现什么,但类似这样的事情可能会有所帮助:

      var ul = //...
      var items = ul.getElementsByTagName("li");
      for (var i = 4; i < items.length; i++) {
          // do whatever you need to do here, e.g.:
          items[i].className += " foo";
      }
      
      然后只需迭代返回的数组即可执行显示/隐藏逻辑

      可以预见的是,我也会建议你研究一下(不知道你是否能够使用它)。这会使这类事情变得容易得多。例如,您可以通过以下方式实现上述所有功能:

      $("ul>li:gt(3)").show();
      

      虽然你试图做的事情本身是错误的,但我只是在回答这个问题。使用这个(这是非常不言自明的):


      其中,
      i
      是要从中开始的标签号。这不是
      for
      循环的原因是每次删除元素时,长度都会减少。如果
      ul
      不是唯一的一个,给它一个ID,然后使用
      document.getElementById()

      虽然您试图做的事情本身是错误的,但我只是在回答这个问题。使用这个(这是非常不言自明的):


      其中,
      i
      是要从中开始的标签号。这不是
      for
      循环的原因是每次删除元素时,长度都会减少。如果
      ul
      不是唯一的一个,那么给它一个ID并使用
      document.getElementById()

      提示“使用jQuery”答案…这不是有效的HTML,您不能将LI的父项作为DIV@Jim:你说得好像这是件坏事@斯拉斯:我知道这不是一个有效的方法。但我想知道这是否可能。它无效,因此很可能会被忽略,或者干脆不管你想做什么都不起作用。提示“使用jQuery”回答团队…这不是有效的HTML,你不能让LI的父母作为DIV@Jim:你说得好像这是件坏事@斯拉斯:我知道这不是一个有效的方法。但是我想知道它是否可能。它是无效的,因此很可能会被忽略,或者不管你想做什么,它都不起作用。是的,我用一个沉思的jquery来做其他事情,你的方式是有意义的,并且保持html的有效性。谢谢你。是的,我用一个沉思的jquery来做其他的事情,你的方式是有意义的,并且保持了html的有效性。谢谢你。