js 简版双色球 取号
<style type="text/css">
span{
display: block;
float: left;
width: 50px;
height: 50px;
border: 1px solid red;
background-color: #000;
}
div{
width: 520px;
height: 520px;
margin: 0 auto;
overflow: hidden;
border: 1px solid red;
}
</style>
<div></div>
<button>start</button>
<h1></h1>
<script type="text/javascript">
var div=document.getElementsByTagName('div')[0];
var btn=document.getElementsByTagName('button')[0];
var h1=document.getElementsByTagName('h1')[0];
for(var i=1;i<34;i++){
var span=document.createElement('span');
span.innerHTML=i;
div.appendChild(span);
};
var spans=div.getElementsByTagName('span');
function white(obj){
obj.style.backgroundColor="#fff";
};
function sortNumber(a,b){
return a-b;
};
function checkRepeat(num,arr){
for(var i=0,j=arr.length;i<j;i++){
if (num==arr[i]) {
return false;
};
};
return true;
};
btn.onclick=function(){
// 初始化
h1.innerHTML="";
for(var i=0,j=spans.length;i<j;i++){
spans[i].style.backgroundColor="#000";
}
// 循环的到6个数
var poor=[];
for(var i=0,j=6;i<j;i++){
var num=Math.floor(spans.length*Math.random());
if (checkRepeat(num,poor)) {
poor.push(num);
}else{
j++;
};
};
// 排序
var poorSort=poor.sort(sortNumber);
// 另一种高效排序
function quicksort(arr){
if (arr.length == 0)
return [];
var left = new Array();
var right = new Array();
var pivot = arr[0];
for (var i = 1; i < arr.length; i++) {
if (arr[i] < pivot) {
left.push(arr[i]);
} else {
right.push(arr[i]);
}
}
return left.concat(pivot, right);
// return quicksort(left).concat(pivot, quicksort(right));
}
// var poorSort=quicksort(poor);
// 显示数据
for(var i=0,j=poorSort.length;i<j;i++){
white(spans[poorSort[i]]);
h1.innerHTML=h1.innerHTML+parseInt(poorSort[i]+1);
if (i<j-1) {
h1.innerHTML=h1.innerHTML+",";
};
};
}
</script>
js 简版双色球 取号的更多相关文章
- js简版定时器
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 自定义滚动条Js简版
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>自定义滚 ...
- js消除小游戏(极简版)
js小游戏极简版 (1) 基础布局 <div class = "box"> <p></p> <div class="div&qu ...
- Underscore源码阅读极简版入门
看了网上的一些资料,发现大家都写得太复杂,让新手难以入门.于是写了这个极简版的Underscore源码阅读. 源码: https://github.com/hanzichi/underscore-an ...
- FFmpeg简易播放器的实现-最简版
本文为作者原创:https://www.cnblogs.com/leisure_chn/p/10040202.html,转载请注明出处 基于FFmpeg和SDL实现的简易视频播放器,主要分为读取视频文 ...
- 基于JQ的简版选项卡记录
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- typescript 简版跳一跳
typescript 简版跳一跳 学习typescript,第一步应该是学习官方文档,理解最基础的语法.第二步开始用typescript实现一些js+css 或者canvas类型的游行.现在开始我们用 ...
- SpringBoot2+Netty打造通俗简版RPC通信框架(升级版)
背景 上篇文章我简单的介绍了自己打造的通俗简版RPC通信框架,这篇是对简版的增强~ 如果大家对此项目还感兴趣的话,可到码云上瞄瞄:Netty-RPC 上 ...
- 腾讯云短信SDK-精简版
/** * 腾讯云短信SDK-精简版 * 本模块使用-向腾讯云短信服务器发送请求 * @return json 腾讯服务器返回值-json字符串 */ private function send_sm ...
随机推荐
- 常用C++面试总结
指定对齐值:#pragma pack(n),n=1,2,4,8,16改变系统的对齐系数struct和union都是由多个不同的数据类型成员组成, 但在任何同一时刻, union中只存放了一个被选中的成 ...
- MongoDB分片集群原理、搭建及测试详解
随着技术的发展,目前数据库系统对于海量数据的存储和高效访问海量数据要求越来越高,MongoDB分片机制就是为了解决海量数据的存储和高效海量数据访问而生. MongoDB分片集群由mongos路由进程( ...
- MVCC&PURGE&分布式事务
Ⅰ.MVCC介绍 consistent non-locking read,通过行多版本控制的方式读取当前执行时间点的记录 默认情况下innodb select没有任何锁,读到的记录在更新就通过undo ...
- HTTP Get Post究竟有哪些区别
get在浏览器回退时是无害的,而post会再次提交请求. get产生的url地址可以被bookmark,而post不可以. get请求会被浏览器主动cache,而post不会,除非手动设置. get请 ...
- Windows10 家庭版 关闭Windows defender
管理员权限打开cmd,输入下面命令: reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender&quo ...
- Lint found fatal errors while assembling a release target
1.Android 打包错误信息 Generate signed Bundle or APK 打包时,报了一个错,错误信息如下: Error:Execution failed for task ´: ...
- python 当前时间多加一天、一小时、一分钟
datetime模块 import datetime # 获取当前时间 print(datetime.datetime.now()) # 2017-07-15 15:01:24.619000 # 格式 ...
- cocos2d-x JS 本地玩家位置跟服务器玩家位置转换相关
//各种游戏人数情况下的本地位置配置mb.LOCAL_POS_LIST = { 2 : [0, 2], 3 : [0, 1, 3], 4 : [0, 1, 2, 3]}; /*------------ ...
- day07 Python文件操作
一,文件操作基本流程 #1. 打开文件,得到文件句柄并赋值给一个变量 f=open('a.txt','r',encoding='utf-8') #默认打开模式就为r #2. 通过句柄对文件进行操作 d ...
- go get Unknown SSL protocol error in connection to gopkg.in
OSX go get报错 go get Unknown SSL protocol error in connection to gopkg.in https://github.com/niemeyer ...