仅使用JavaScript按类名随机化多个ul标记
我的页面上有多个ul元素,我需要在其中一些元素上添加一个类名,那些具有该类名的元素需要随机化。我可以通过id来做,但是我在一个页面上只能有一个id,所以我不能这样做。我需要一个没有JQuery的JavaScript解决方案。感谢您的帮助。多谢各位 下面是我用来根据id将其随机化的内容(尽管它只做一个ul):仅使用JavaScript按类名随机化多个ul标记,javascript,html,random,Javascript,Html,Random,我的页面上有多个ul元素,我需要在其中一些元素上添加一个类名,那些具有该类名的元素需要随机化。我可以通过id来做,但是我在一个页面上只能有一个id,所以我不能这样做。我需要一个没有JQuery的JavaScript解决方案。感谢您的帮助。多谢各位 下面是我用来根据id将其随机化的内容(尽管它只做一个ul): var thisUL=document.getElementById(“myID”); 对于(变量i=thisUL.children.length;i>=0;i--){ thisUL.app
var thisUL=document.getElementById(“myID”);
对于(变量i=thisUL.children.length;i>=0;i--){
thisUL.appendChild(thisUL.childs[Math.random()*i|0]);
}
- 随机数a
- 随机1b
- 随机1c
- 随机数2a
- 随机3b
- 随机4c
- 随机3A
- 随机3b
- 随机3c
每个li都需要保持在它自己的ul中。首先,您应该使用属性,然后使用来定位具有该属性的所有元素。然后使用for循环迭代它们,您就拥有了其余的功能:
var ulList=document.getElementsByClassName(“myElement”);
for(设j=0;j=0;i--){
thisUL.appendChild(thisUL.childs[Math.random()*i|0]);
}
}
- 随机数a
- 随机1b
- 随机1c
- 随机数2a
- 随机3b
- 随机4c
- 随机3A
- 随机3b
- 随机3c
使用类而不是id。元素id应该是唯一的。比如,
。然后用document.getElementsByClassName(“myClass”)选择它们。
var thisUL = document.getElementById("myID");
for (var i = thisUL .children.length; i >= 0; i--) {
thisUL.appendChild(thisUL.children[Math.random() * i | 0]);
}
<ul id="myID">
<li>random1a</li>
<li>random1b</li>
<li>random1c</li>
</ul>
<ul id="myID">
<li>random2a</li>
<li>random3b</li>
<li>random4c</li>
</ul>
<ul id="myID">
<li>random3a</li>
<li>random3b</li>
<li>random3c</li>
</ul>