从随机子项中排序列表项

时间:2015-10-19 13:28:33

标签: javascript html list sorting

更新 正如很多人提到的那个问题不够清楚我会试着更好地解释一下^ _ ^感谢你的帮助和耐心!

我有一个大约15个项目的列表(会增加或减少)。每个项目都包含一个带有其网站URL的徽标。这些项目按字母顺序手动排序。

WriteLine

每次页面加载(也是第一次)我想ramdonly选择一个孩子,然后显示从所选孩子开始重新排序的列表,然后是其余的,而不会丢失按字母顺序排列。

例如,如果ramdon选择了我的列表的第3个孩子,那么它应该显示如下列表:

tasks

更新2: 嗨!这是我试图让它工作的代码,但它什么都不做:( ramdom工作,但我怎么能重新排序列表项?

  <ul class="myClass">
        <li class="item">
          <a href="URL" title="Company A" target="_blank">
            <span class="logo">
              <img src="images/logo1.jpg">
            </span>
          </a>
        </li>
        <li class="item">
          <a href="URL" title="Company B" target="_blank">
            <span class="logo">
              <img src="images/logo2.jpg">
            </span>
          </a>
        </li>
        <li class="item">
          <a href="URL" title="Company C" target="_blank">
            <span class="logo">
              <img src="images/logo3.jpg">
            </span>
          </a>
        </li>
        <li class="item">
          <a href="URL"  title="Company D" target="_blank">
            <span class="logo">
              <img src="images/logo4.jpg">
            </span>
          </a>
        </li>
        <li class="item">
          <a href="URL" title="Company E" target="_blank">
            <span class="logo">
              <img src="images/logo5.jpg">
            </span>
          </a>
        </li>
    ...
    </ul>

我希望这次我的问题更加明确。非常感谢提前! :)

2 个答案:

答案 0 :(得分:-1)

尝试给你的ul一个id

<ul id='sorted_list'>

然后在javascript中你可以做到:

elementlist = ['A', 'B']
randomelement = Math.floor(Math.random() * elementlist.length)

list = document.getElementById('sorted_list')
listelement = document.createElement('LI')
listelement.textContent(elementlist[randomelement])
list.appentChild(listelement)

将此与zvonas答案相结合,您应该对其进行管理。

答案 1 :(得分:-2)

为了帮助您入门:

var elems = ['A','B','C','D','E','F'];
var selectedLetter = 'D';
var newOrder = elems.splice(elems.indexOf(selectedLetter)).concat(elems);