javascript实现ul中列表项随机排列
方法1
<!DOCTYPE html>
<html lang="en">
<head>
<script type="text/javascript">
window.onload=function(){
var arr = new Array(1,2,3,4,5,6);
var ul = document.getElementsByTagName('ul')[0];
var len1 = arr.length;
var len = len1;
var index = parseInt(Math.random()*len1);
for(var i=0;i<len1;i++){
ul.appendChild(ul.children[index]);
arr.pop(index);
len = arr.length;
index = parseInt(Math.random()*len);
}
};
</script>
</head>
<body>
<ul>
<li>苹果</li>
<li>桔子</li>
<li>香蕉</li>
<li>石榴</li>
<li>桃子</li>
<li>菠萝</li>
</ul>
</body>
</html>
方法2
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script>
window.onload = function(){
var arr = [['<li>1</li>'],['<li>2</li>'],['<li>3</li>'],['<li>4</li>'],['<li>5</li>'],['<li>6</li>']];
var result = '';
var len = arr.length;
for(var i=0;i<len ;i++){
var rand = parseInt(arr.length*Math.random());
result += arr[rand];
arr.splice(rand,1);
}
document.getElementsByTagName("ul")[0].innerHTML= result ;
};
//arr 数组就是ul里的内容组成的字符串数组
</script>
</head>
<body>
<ul></ul>
</body>
</html>
方法3
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript">
window.onload = function(){
var ul = document.getElementsByTagName("ul")[0];
var lis = document.getElementsByTagName("li");
var arr = [];
for(var i = 0; i < lis.length; i++){
arr.push(lis[i]);
}
arr.sort(function(a,b){
/*var rand = Math.random();
if(rand > 0.5) {
return 1;
}else if(rand < 0.5){
return -1;
} else {
return 0;
}*/
return Math.random()>.5 ? -1 : 1;
//通过随机产生0到1的数,然后判断是否大于0.5从而影响排序,产生随机性的效果。
});
for(var i = 0; i < arr.length; i++){
ul.appendChild(arr[i]);
}
}
</script>
</head>
<body>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</body>
</html>
最新文章
- 【转】Js获取当前日期时间及格式化操作
- ListView遍历每个Item出现NullPointerException的异常
- Linux系统安装-系统分区
- Mvc api HelpPage 与注释
- 【代码笔记】iOS-点击加号增加书架,点击减号减少书架
- github pages
- 查看修改swap空间大小
- 题解西电OJ (Problem 1003 -最喜欢的数字)--动态规划
- C# winform 递归选中TreeView子节点
- SQL开发中容易忽视的一些小地方(五)
- js预解析问题总结
- 第八十二节,CSS3过渡效果
- H5在线编辑器优化总结
- 如何修改ionic Popup的样式
- asp.net core系列 29 EF模型配置(查询类型,关系数据库建模)
- 2019十大安卓手游折扣平台app排行榜
- 螺旋折线(可能是最简单的找规律)【蓝桥杯2018 C/C++ B组】
- SQL 将一列多行数据合并为一行
- 用开源项目JazzyViewPager实现ViewPager切换动画
- Linux系统和工具集