本地运行是可以的,但是提交就是不行,题目让使用es5,以下代码中有es6写法,哪位大佬自己去用es5玩吧
首先是css美化一下啊
b {
display: block;
width: 30px;
height: 30px;
float: left;
text-align: center;
line-height: 30px;
border-radius: 50%;
border: 1px solid #112234;
margin: 2px;
}
.article{
background: red;
}
.balls-wp{
overflow: hidden;
}js代码
var arrRed=[],//红球节点
arrBlue=[];//蓝球节点
a = [],//红球随机数
b = []//蓝球随机数
//获取红球随机
function Rdm(arr) {
if (arr.length >= 6) {
return arr.sort(function(a,b){
return a-b
})
} else {
let Num = arrRed[Math.floor(Math.random() * arrRed.length)]
if (arr.indexOf(Num) == '-1') {
arr.push(Num)
}
//递归调用本身
return Rdm(arr)
}
}
//红球选中 添加删除节点
function replace(arr1, cosArr) {
for(let i =0;i<cosArr.length;i++){
//获取父节点
var box=document.querySelector('.balls-wp');
//创建文本
var p0=document.createElement("b");
//添加文本样式
p0.classList.add("article")
//创建节点
var txt=document.createTextNode(cosArr[cosArr.length-1-i]);
//添加节点
p0.appendChild(txt);
box.insertBefore(p0,document.querySelector('.balls-wp').childNodes[0]);
}
arr1.forEach((ele,index) => {
if(cosArr.indexOf(ele.innerText)!='-1'&&index>6){
//删除重复节点
document.querySelector('.balls-wp').removeChild(ele)
}
})
}
//蓝球添加 删除节点 和上面基本一样 懒得优化了
function Replace(arr1, cosArr) {
for(let i =0;i<cosArr.length;i++){
var box=document.querySelectorAll('.balls-wp')[1];
var p0=document.createElement("b");
p0.classList.add("article")
var txt=document.createTextNode(cosArr[0]);
p0.appendChild(txt);
box.insertBefore(p0,document.querySelectorAll('.balls-wp')[1].childNodes[0]);
}
arr1.forEach((ele,index) => {
if(cosArr.indexOf(ele.innerText)!='-1'&&index>1){
document.querySelectorAll('.balls-wp')[1].removeChild(ele)
}
})
}
//获取所有节点
function nodetype (ar,arr){
for (var i = 0; i < ar.length; i++) {
if (ar[i].nodeType == 1) { //判断节点是否为元素节点
arr.push(ar[i].innerText)
}
}
}
//红球随机数
function randomFn() {
//获取所有红球节点
var red = document.querySelector('.balls-wp').childNodes
nodetype(red,arrRed)
//获取所有蓝球节点
var blue = document.querySelectorAll('.balls-wp')[1].childNodes
nodetype(blue,arrBlue)
//抽取蓝球
b.push(arrBlue[Math.floor(Math.random() * arrBlue.length)])
//抽取红球
Rdm(a,arrRed)
//红球位置更换
replace(red,a)
//蓝球位置更换
Replace(blue,b)
//返回格式
return a.join(',')+'|'+b[0]
}
randomFn();


京公网安备 11010502036488号