js随机抽奖代码(java随机抽奖代码)

http://www.itjxue.com  2023-02-04 08:48  来源:未知  点击次数: 

js随机抽奖一二三等奖不重复的抽奖逻辑怎么设置

!DOCTYPE?html

html

head

titlejs随机抽奖一二三等奖不重复的抽奖逻辑怎么设置/title

meta?charset="UTF-8"?/

script

//添加一个随机函数

Math.rand?=?function(min,?max){

function?subRand(min,?max){

min?=?min???min?:?0;

max?=?max???max?:?9;

var?result?=?0;

do{

result?=?Math.random().toString().substr(2,?1);

}while(!(result?=?min??result?=?max));

return?result;

}

function?getBit(maxBit){

maxBit?=?maxBit???maxBit?:?max.toString().length;

var?result?=?[],

count?=?0;

for(var?i?=?0;?i??maxBit;?i++){

result.push(subRand());

if(i?!=?0??result[i]?==?result[i?-?1]){

count++;

}

}

return?maxBit?-?count;

}

min?=?min???min?:?0;

max?=?max???max?:?0;

var?result?=?'',

bit?=?getBit();

do{

result?=?'';

for(var?i?=?0;?i??bit;?i++){

result?=?result?+?subRand();

}

result?=?parseInt(result);

}while(!(result?=?min??result?=?max));

return?result;

}

//console.log(Math.rand(0,?100));

//LuckDraw?抽奖类?参数一?奖池数组,?参数二?中奖数量?返回?中奖索引

function?LuckDraw(pool,?numberOfWinners){

var?results?=?[],

//是否已经中奖

isExists?=?function(index){

for(var?i?=?0;?i??results.length;?i++){

if(results[i]?==?index){

return?true;

}

}

return?false;

},

subLuckDraw?=?function(){

do{

result?=?Math.rand(0,?pool.length?-?1);

}while(isExists(result));

return?result;

}

for(var?i?=?0;?i??numberOfWinners;?i++){

results.push(subLuckDraw());

}

return?results;

}

var?pool?=?[

'关',

'张',

'赵',

'马',

'黄',

'曹老板'

];

winners?=?LuckDraw(pool,?3);?//返回从奖池中?中奖的索引,假设123等奖都只有一名的话各取一个即可

//假设123等奖?一等奖?1名,?二等奖?2名,?三等奖?3名,?只需要调用这个函数第二个参数设置为总和?6?即可

//然后从结果中第一个索引为一等奖?23?索引为二等奖?,?456索引为?三等奖

console.log(winners);

/script

/head

body

script

for(var?i?=?0;?i??winners.length;?i++){

document.write(pool[winners[i]]?+?'?恭喜你中了'?+?(i?+?1)?+?'等奖br?/');

}

/script

/body

/html

js实现可键盘控制的简单抽奖程序

本文实例为大家分享了js抽奖程序的编写代码,以及编写注意事项,感兴趣的小伙伴们可以参考一下

代码:

!DOCTYPE

html

html

lang="en"

head

meta

charset="UTF-8"

title简单抽奖(可用键盘)/title

style

*{margin:0;padding:0;}

.box{width:

400px;height:

300px;margin:50px

auto;background:

red}

.title{color:

#fff;font-size:

30px;font-weight:700px;padding:

50px

0;text-align:

center;height:40px;}

.btm{text-align:

center;padding:20px

0;}

.btm

a{display:

inline-block;width:

120px;height:60px;line-height:

60px;background:

#FEF097;margin:0

10px;text-decoration:

none;}

/style

script

var

data=['Iphone','Ipad','笔记本','相机','谢谢参与','充值卡','购物券'],

timer=null,//定时器

flag=0;//阻止多次回车

window.onload=function(){

var

play=document.getElementById('play'),

stop=document.getElementById('stop');

//

开始抽奖

play.onclick=playFun;

stop.onclick=stopFun;

//

键盘事件

document.onkeyup=function(event){

event

=

event

||

window.event;

//

回车键的code值:13

if(event.keyCode==13){

if(flag==0){

playFun();

flag=1;

}else{

stopFun();

flag=0;

}

}

}

function

playFun(){

var

title=document.getElementById('title');

var

play=document.getElementById('play');

clearInterval(timer);

timer=setInterval(function(){

var

random=Math.floor(Math.random()*data.length);

title.innerHTML=data[random];

},60);

play.style.background='#999';

}

function

stopFun(){

clearInterval(timer);

var

play=document.getElementById('play');

play.style.background='#FEF097';

}

}

/script

/head

body

div

class="box"

div

class="title"

id="title"淘家趣抽奖/div

div

class="btm"

a

href="javascript:;"

id="play"开始/a

a

href="javascript:;"

id="stop"停止/a

/div

/div

/body

/html

注意点:

1.随机数,取数组的其中一个;取0-n之间:Math.random()*(n+1)

2.定时器,开始抽奖时要停止前面的一次抽奖,不然会定时器重叠

3.按键操作,要判断是抽奖进行中,还是未开始,所有设置了变量

flag

想要学习更多关于javascript抽奖功能,请参考此专题:javascript实现抽奖功能

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

求一个用javascript编写的抽奖代码?可以循环抽奖!

IE打开

===================

html

head

meta http-equiv="Content-Language" content="zh-cn"

meta http-equiv="Content-Type" content="text/html; charset=gb2312"

titleJs模拟抽奖的效果/title

/head

body

style type="text/css"

.a1{

position:relative;

font-family:Verdana;

font-size:20px;

color:#889978;

}

/style

script language="JavaScript"

function lotto(){

if (!document.all !document.layers)

return

for (j=1; j 48; j++)//stop zero!?

{

var a=Math.round(Math.random()*j+1);

var b=Math.round(Math.random()*j+1);

var c=Math.round(Math.random()*j+1);

var d=Math.round(Math.random()*j+1);

var e=Math.round(Math.random()*j+1);

var f=Math.round(Math.random()*j+1);

}

var x=new Array(a,b,c,d,e,f);

if ((x[0] == x[1]) || (x[0] == x[2]) || (x[0] == x[3]) || (x[0] == x[3]) || (x[0] == x[5]) ||

(x[1] == x[2]) || (x[1] == x[3]) || (x[1] == x[4]) || (x[1] == x[5]) ||

(x[2] == x[3]) || (x[2] == x[4]) || (x[2] == x[5]) ||

(x[3] == x[4]) || (x[3] == x[5]) ||

(x[4] == x[5]) || (x[5] == x[4]))

lotto();//restart

else

{

var y=x.toString();

var z=y.split(',');

for (i=0; i z.length; i++)

{

z[i]=z[i]+" ";

if (z[i].length 3)//add '0' to singles

z[i]="0"+z[i]+" ";

}

z=z.sort();

Nos=z[0]+z[1]+z[2]+z[3]+z[4]+z[5];

if (document.all)

{document.all.layer1.innerHTML=Nos;}//OR Z!

else if (document.layers)

{

document.layers.layer1.document.open();

document.layers.layer1.document.write("span style='position:absolute;top:0px;left:0px;font-family:Verdana;font-size:20px;color:#888888;text-align:center' "+Nos+"/span");

document.layers.layer1.document.close();

}

T=setTimeout('lotto()',10);

}

}

//--

/script

table border='0' width=250 height=50

tr valign='middle'

td align='center'

form name=form

input type=button value='点击看看你有没有中将' onClick="lotto(),setTimeout('clearTimeout(T)',3000)"

/form

span id=layer1 class=a1Result/span

/td

/tr

/table

/body

/html

使用JavaScript完成一个抽奖程序,当单击页面上开始抽奖按钮时,在1~36中选取7个互不相同

1~36个数取7个不同的,需要用while循环+随机数去取出7个数。

在while循环里面,可以判断取出来的数(用switch),是否是28,18,8. 如果有输出相应的奖项,如果没有,就输出其它的。然后将这7个数,打印出来就好了。

JavaScript(缩写为JS)是一种高级的、多范式、解释型的编程语言,是一门基于原型、函数先行的语言,它支持面向对象编程、命令式编程以及函数式编程。

它提供语法来操控文本、数组、日期以及正则表达式,不支持I/O(比如网络、存储和图形等),但可以由它的宿主环境提供支持。它已经由ECMA(欧洲计算机制造商协会)通过ECMAScript实现语言的标准化。它被世界上的绝大多数网站所使用,也被世界主流浏览器支持。

JS随机抽取代码的修改

var alldata = "前端开发 李XX,java工程师 王xx,网络管理员 刘x,DBA 李x,UI设计师 胡xx,总监 王xx"

修改这个就可以了呀,里面文字用逗号隔开,

原理就是 将这个先变成数组,然后计算这个数组的长度。

最后执行一个定时操作,每次随机取数组里的一个名称并将他赋值给id为oknum的那个DIV里

点击停止后id为showresult的一个input 的value值修改为 当前id为oknum的那个DIV里的TEXT内容

不过您的代码里没发现有id为showresult的元素。

js随机取号 代码问题

html

head

title随机抽奖程序/title

meta http-equiv="Content-Type" content="text/html; charset=gb2312" /

/head

body

script type="text/javascript"

var alldata = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"

var alldataarr = alldata.split(",");

var num = alldataarr.length-1 ;

var timer;

var result = [];

function change() {

alldataarr[GetRnd()];

}

function start() {

clearInterval(timer);

timer = setInterval('change()', 10);

}

function ok() {

clearInterval(timer); document.getElementById("showresult").value = document.getElementById("oknum").innerText;

}

function GetRnd() {

result = [];

for (var i = 0; i 4; i++) {

var ranNum = Math.ceil(Math.random() * 25); //生成一个0到25的数字

//大写字母'A'的ASCII是65,A~Z的ASCII码就是65 + 0~25;然后调用String.fromCharCode()传入ASCII值返回相应的字符并push进数组里

result.push(String.fromCharCode(65 + ranNum));

}

document.getElementById('oknum').innerText = result.toString();

}

/script

div

div id="oknum"

请单击开始

/div

button onclick="start()" accesskey="s"开始/button

button onclick="ok()" accesskey="o"停止/button 您的选择是:

input type="text" id="showresult" value="" /

/div

/body

/html

(责任编辑:IT教学网)

更多

推荐excel文章