導航:首頁 > 編程語言 > js抽獎系統怎麼實現

js抽獎系統怎麼實現

發布時間:2021-12-03 09:46:31

js隨機抽獎一二三等獎不重復的抽獎邏輯怎麼設置

<!DOCTYPEhtml>
<html>
<head>
<title>js隨機抽獎一二三等獎不重復的抽獎邏輯怎麼設置</title>
<metacharset="UTF-8"/>
<script>
//添加一個隨機函數
Math.rand=function(min,max){
functionsubRand(min,max){
min=min?min:0;
max=max?max:9;
varresult=0;
do{
result=Math.random().toString().substr(2,1);
}while(!(result>=min&&result<=max));
returnresult;
}
functiongetBit(maxBit){
maxBit=maxBit?maxBit:max.toString().length;
varresult=[],
count=0;
for(vari=0;i<maxBit;i++){
result.push(subRand());
if(i!=0&&result[i]==result[i-1]){
count++;
}
}
returnmaxBit-count;
}
min=min?min:0;
max=max?max:0;
varresult='',
bit=getBit();
do{
result='';
for(vari=0;i<bit;i++){
result=result+subRand();
}
result=parseInt(result);
}while(!(result>=min&&result<=max));
returnresult;
}
//console.log(Math.rand(0,100));
//LuckDraw抽獎類參數一獎池數組,參數二中獎數量返回中獎索引
functionLuckDraw(pool,numberOfWinners){
varresults=[],
//是否已經中獎
isExists=function(index){
for(vari=0;i<results.length;i++){
if(results[i]==index){
returntrue;
}
}
returnfalse;
},
subLuckDraw=function(){
do{
result=Math.rand(0,pool.length-1);
}while(isExists(result));
returnresult;
}
for(vari=0;i<numberOfWinners;i++){
results.push(subLuckDraw());
}
returnresults;
}
varpool=[
'關',
'張',
'趙',
'馬',
'黃',
'曹老闆'
];
winners=LuckDraw(pool,3);//返回從獎池中中獎的索引,假設123等獎都只有一名的話各取一個即可
//假設123等獎一等獎1名,二等獎2名,三等獎3名,只需要調用這個函數第二個參數設置為總和6即可
//然後從結果中第一個索引為一等獎23索引為二等獎,456索引為三等獎
console.log(winners);
</script>
</head>
<body>
<script>
for(vari=0;i<winners.length;i++){
document.write(pool[winners[i]]+'恭喜你中了'+(i+1)+'等獎<br/>');
}
</script>
</body>
</html>

Ⅱ js轉盤抽獎求解釋裡面部分代碼的原理

應該是界面效果切換代碼
costheta = Math.cos(rad);
sintheta = Math.sin(rad);
是js數學函數
el.style.filter 是IE的濾鏡函數,其他瀏覽器應該無效的版
window.navigator.userAgent.indexOf("Chrome")>=1)

是判斷當前使權用的瀏覽器函數,根據不同瀏覽器調用不同代碼來實現效果
其他的不太清楚了

Ⅲ js 九宮格怎麼實現順時針旋轉抽獎

用setinterval
,每隔1秒或者2秒,然後寫一個自增的
i,i是幾就讓第幾個框亮,當i到9,就把i
置成1,至於框亮,可以改變框的背景色來處理。用js修改。

Ⅳ 抽獎系統怎麼做

可以用exel做一個
1、製作中獎名單。

2、生產隨機代號,這里用到公式「=round(rand()*11+1,0)」生成1到12之間的隨機數,用round函數保留0位小數。

3、通過隨機代號,返回中獎者,這里用到函數「=VLOOKUP(E4,A2:B13,2)」表示在A2到B13的范圍內,找到E4所對應的第2列的值。

4、最終完成,每按一次F9,就生產一次,也達到了抽獎的目的。

Ⅳ 用html5+js 做一個轉盤抽獎怎麼做,求源碼!

5分給你個程序。。。
自己參考改吧

<input type="button" value="開始旋轉" onclick="spin();" style="float: left;" />
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

<canvas id="wheelcanvas" width="500" height="500"></canvas>
<script type="application/javascript">
var colors = ["#B8D430", "#3AB745", "#029990", "#3501CB",
"#2E2C75", "#673A7E", "#CC0071", "#F80120",
"#F35B20", "#FB9A00", "#FFCC00", "#FEF200"];
var restaraunts = ["北京", "上海", "天津", "南京",
"杭州", "深圳", "武漢", "濟南",
"重慶", "大連", "合肥", "鄭洲"];

var startAngle = 0;
var arc = Math.PI / 6;
var spinTimeout = null;

var spinArcStart = 10;
var spinTime = 0;
var spinTimeTotal = 0;

var ctx;

function draw() {
drawRouletteWheel();
}

function drawRouletteWheel() {
var canvas = document.getElementById("wheelcanvas");
if (canvas.getContext) {
var outsideRadius = 200;
var textRadius = 160;
var insideRadius = 125;

ctx = canvas.getContext("2d");
ctx.clearRect(0,0,500,500);

ctx.strokeStyle = "black";
ctx.lineWidth = 2;

ctx.font = 'bold 12px sans-serif';

for(var i = 0; i < 12; i++) {
var angle = startAngle + i * arc;
ctx.fillStyle = colors[i];

ctx.beginPath();
ctx.arc(250, 250, outsideRadius, angle, angle + arc, false);
ctx.arc(250, 250, insideRadius, angle + arc, angle, true);
ctx.stroke();
ctx.fill();

ctx.save();
ctx.shadowOffsetX = -1;
ctx.shadowOffsetY = -1;
ctx.shadowBlur = 0;
ctx.shadowColor = "rgb(220,220,220)";
ctx.fillStyle = "black";
ctx.translate(250 + Math.cos(angle + arc / 2) * textRadius, 250 + Math.sin(angle + arc / 2) * textRadius);
ctx.rotate(angle + arc / 2 + Math.PI / 2);
var text = restaraunts[i];
ctx.fillText(text, -ctx.measureText(text).width / 2, 0);
ctx.restore();
}

//Arrow
ctx.fillStyle = "black";
ctx.beginPath();
ctx.moveTo(250 - 4, 250 - (outsideRadius + 5));
ctx.lineTo(250 + 4, 250 - (outsideRadius + 5));
ctx.lineTo(250 + 4, 250 - (outsideRadius - 5));
ctx.lineTo(250 + 9, 250 - (outsideRadius - 5));
ctx.lineTo(250 + 0, 250 - (outsideRadius - 13));
ctx.lineTo(250 - 9, 250 - (outsideRadius - 5));
ctx.lineTo(250 - 4, 250 - (outsideRadius - 5));
ctx.lineTo(250 - 4, 250 - (outsideRadius + 5));
ctx.fill();
}
}

function spin() {
spinAngleStart = Math.random() * 10 + 10;
spinTime = 0;
spinTimeTotal = Math.random() * 3 + 4 * 1000;
rotateWheel();
}

function rotateWheel() {
spinTime += 30;
if(spinTime >= spinTimeTotal) {
stopRotateWheel();
return;
}
var spinAngle = spinAngleStart - easeOut(spinTime, 0, spinAngleStart, spinTimeTotal);
startAngle += (spinAngle * Math.PI / 180);
drawRouletteWheel();
spinTimeout = setTimeout('rotateWheel()', 30);
}

function stopRotateWheel() {
clearTimeout(spinTimeout);
var degrees = startAngle * 180 / Math.PI + 90;
var arcd = arc * 180 / Math.PI;
var index = Math.floor((360 - degrees % 360) / arcd);
ctx.save();
ctx.font = 'bold 30px sans-serif';
var text = restaraunts[index]
ctx.fillText(text, 250 - ctx.measureText(text).width / 2, 250 + 10);
ctx.restore();
}

function easeOut(t, b, c, d) {
var ts = (t/=d)*t;
var tc = ts*t;
return b+c*(tc + -3*ts + 3*t);
}

draw();
</script>

Ⅵ 怎麼用html5實現 抽獎效果

做抽獎,用 Epub360!可視化編輯器,封裝組件拼接,完成抽獎活動。

Ⅶ 使用JavaScript完成一個抽獎程序,當單擊頁面上開始抽獎按鈕時,在1~36中選取7個互不相同

1~36個數取7個不同的,需要用while循環+隨機數去取出7個數。

在while循環裡面,可以判斷取出來的數(用switch),是否是28,18,8. 如果有輸出相應的獎項,如果沒有,就輸出其它的。然後將這7個數,列印出來就好了。

JavaScript(縮寫為JS)是一種高級的、多範式、解釋型的編程語言,是一門基於原型、函數先行的語言,它支持面向對象編程、命令式編程以及函數式編程。

它提供語法來操控文本、數組、日期以及正則表達式,不支持I/O(比如網路、存儲和圖形等),但可以由它的宿主環境提供支持。它已經由ECMA(歐洲計算機製造商協會)通過ECMAScript實現語言的標准化。它被世界上的絕大多數網站所使用,也被世界主流瀏覽器支持。

Ⅷ 你好,我網站有一個純js抽獎頁面,我已經實現了可抽獎初始次數等於會員金幣數(問題里的php代碼)

用AJAX吧,每次抽獎之後跟後台進行交互,獲取用戶抽獎後金幣數~同時後台也需要對用戶金幣數進行校驗,每次抽獎後減少用戶金幣= =`

varM_Money=<?phpecho$cfg_ml->M_Money;?>;
varC_Money=10;
$('button').click(function(){
if(M_Money>=C_Money){
runCup();
$('button').attr("disabled",true);
$.ajax({
url:'choujiang.php',
data:{res:抽獎結果},
method:'POST',
success:function(res){

M_Money=res.M_Money;
$('button').removeAttr("disabled",true);
//抽獎結果通知
//Todo
}
});
}
else{
alert("親,抽獎次數已用光!充值金幣或點擊「邀請好友」");
}
})

Ⅸ 怎麼做網頁抽獎系統

抽獎系統還是注冊機系統啊??SINA的BLOG能放ASP??

你做的是什麼東西啊....這么神秘.是程序的話應該有開發過加密/解密吧.......

Ⅹ 你知道公司年會抽獎系統是怎麼實現的嗎

用全能抽獎軟體,滿足大多數公司年會抽獎的需求,性價比高。L

閱讀全文

與js抽獎系統怎麼實現相關的資料

熱點內容
懷孕五十年生孩子電影 瀏覽:433
一個在二樓窗邊一個在泳池韓國 瀏覽:136
361影視 瀏覽:555
歐美電影愛情片動作片推薦 瀏覽:534
貴陽大數據人才 瀏覽:706
電腦qq發送不出文件夾 瀏覽:977
穿越時空賣裝備給八路的小說 瀏覽:688
韓國床戲電影在線播放 瀏覽:459
浩哥去香港是什麼電影 瀏覽:470
和孕婦偷情電影 瀏覽:1
回明綠帽版 瀏覽:645
吃膠囊就變聰明的電影 瀏覽:867
架構師與大數據哪個好 瀏覽:550
台灣電影一個胖女的減肥 瀏覽:976
共享影視 瀏覽:583
怎麼樣把電子版做成壓縮文件 瀏覽:176
韓劇學生戀上鋼琴老師 瀏覽:556
重新分娩電影 瀏覽:822
好看的中文字幕網 瀏覽:601
喜劇保鏢電影 瀏覽:949

友情鏈接