日常练习-html+js+css制作一个抽奖网页

html

<html>
<head>
<meta charset="utf-8">
<title>抽奖web</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/css/bootstrap.min.css">
  <script src="https://cdn.staticfile.org/jquery/3.2.1/jquery.min.js"></script>
  <script src="https://cdn.staticfile.org/popper.js/1.15.0/umd/popper.min.js"></script>
  <script src="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>
</head>
<body background="https://ss0.bdstatic.com/94oJfD_bAAcT8t7mm9GUKT-xh_/timg?image&quality=100&size=b4000_4000&sec=1588772845&di=207b5ab133cb84f363ba5e96e38e9e89&src=http://pic.90sjimg.com/back_pic/qk/back_origin_pic/00/02/19/1f671b65310564cdc8f42b67f9c8b0b9.jpg">
    <center><h1>抽奖程序</h1></center><br>
    <div class="container-fluid">
    <div class="row">
        <div class="col-sm-8">
        	<div>
                <div class="form-group">
                    <label for="comment">参与抽奖人员【例如张三18888888888-李四18888888888-……】</label>
                        <textarea class="form-control" rows="5" id="User"></textarea>
                </div>
                <div>
                    抽出几个:<input type="number" name="successUserNumber" id="randomNumber">
                    <button id="start" onclick="startRun()">开始抽奖</button>
                    <button onclick="stop()">停止</button>
                    <button onclick="location.reload()">重新抽奖</button>
                </div>
        	</div>
            <center>
                    <h1 id="randomUser"></h1>
                    <h1 id="successUser"></h1>
            </center>
        </div>
            <div class="col-sm-4">
                <div class="parent">
                    <div class="child">
                    <table class="table">
                        <thead>
                            <tr>
                            <th>参与抽奖人员</th>
                            </tr>
                        </thead>
                    <tbody id="tableuser">
                    </tbody>
                    </table>
                    </div>
                </div>
            </div>
    </div>
</div>
</body>
</html>

js and css:

<style type="text/css">
.parent{
    position:relative;
    height:150%;//高度根据需求自行设定
}
.child{
    position:absolute;
    left:0;
    top:0;
    right:0;
    bottom:0;  //left,top,right,bottom都为0,充满真个页面
    overflow-y:auto;
    overflow-x:hidden; //设置Y轴出现滚动条,X轴隐藏
}
</style>
<script type="text/javascript">
var userArray=new Array();//定义用户数组
var timer;
var outUser;
var randomNumber;
var user;
function startRun() {
    $('#successUser').html('');
	var inUser=document.getElementById('User').value.split('-')
    randomNumber=document.getElementById('randomNumber').value
    $('#start').attr({"disabled":"disabled"});//保证一次点击一次抽奖防止死循环
	for (i=0;i<inUser.length;i++) {
        userArray[i]=inUser[i]
		user+='<tr><td>'+inUser[i]+'</td></tr>'
    }
        $('#tableuser').html(user);
        outUser=shuffle(userArray);
        timer=setInterval("randomShow()",10);
}
function shuffle(arr) {
    //著名的洗牌算法,原理就是遍历数组元素,将当前元素与随机抽取的一个剩余元素进行交换。
    for (let i=arr.length-1; i>=0; i--) {
        let rIndex = Math.floor(Math.random()*(i+1));
        // 打印交换值
        // console.log(i, rIndex);
        let temp = arr[rIndex];
        arr[rIndex] = arr[i];
        arr[i] = temp;
    }
    return arr;
}
function randomShow(){
    pcount = userArray.length - 1;
	num = Math.floor(Math.random() * pcount);
    html=userArray[num]
    $('#randomUser').html(html)
}
function stop(){
    let html=''
    clearInterval(timer);
    //$('#start').removeAttr('disabled');
    $('#randomUser').html('');
    for(i=0;i<randomNumber;i++){
        var number=i+1
        html+='<br><span class="badge badge-success">第'+number+'名-----'+outUser[i]+'</span><br>'
    }

    $('#successUser').html(html);
}
</script>

在这里插入图片描述
学习阶段,代码可能有些冗余。

  • 6
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用以下步骤来制作基于网页抽奖系统: 1. 首先,需要使用HTML来创建一个页面,包括抽奖按钮和奖品展示区域。 2. 接下来,使用CSS来美化页面,使其看起来更加吸引人。 3. 使用JavaScript编写抽奖逻辑,包括生成随机数、判断中奖情况、展示中奖结果等。 4. 将奖品信息存储在一个数组中,当抽奖时从数组中随机选择一个奖品。 5. 在页面上展示中奖结果,并将中奖信息保存到后台数据库中。 6. 最后,添加一些额外的功能,如限制每个用户只能抽一次奖、展示中奖概率等。 通过以上步骤,就可以制作一个基于网页抽奖系统。 ### 回答2: 抽奖系统是互联网应用的常见之一,其涉及到应用前端开发中的一些技术和工具,如jscsshtml等。下面将阐述如何利用这些技术和工具来构建一个基于网页抽奖系统。 1. 抽奖系统的概念和功能 抽奖系统可以理解为是一种以随机抽取幸运用户为主要功能、带有吸引用户参与的应用系统,其主要包括以下功能: -用户注册和登录功能 -抽奖功能 -奖品展示和兑换功能 -报表功能 -安全性措施(防止恶意注册,防止恶意攻击等) 2. 抽奖系统的前端架构 为了完成这个系统,我们将使用以下几种前端技术和工具: -JS:用于处理系统中的业务逻辑和表单验证; -CSS:用于美化页面样式和排版; -HTML:用于页面结构和内容的编写; -AJAX:用于实现页面异步加载、数据交互等功能; -jQuery:基于JS的快速开发和DOM操作等。 3. 抽奖系统的实现 -定义页面结构和样式:利用htmlcss编写页面的框架和外观。 -设计抽奖程序:利用js完成抽奖程序,并包括以下模块:抽奖倒计时,奖品展示,抽奖逻辑,抽奖动画等。 -注册与登录:应用内部的用户注册功能以及登录功能旨在提高用户体验、提高用户粘性。 -数据交互:利用AJAX技术和后端进行数据交互,包括获取奖品信息、用户抽奖结果、更新奖品和用户状态等。这个过程中还需要进行一系列的数据验证来确保数据的准确性、完整性以及安全性。 -奖品兑换:用户在抽中奖品之后可以在系统中兑换奖品,该功能需要与后台实现数据联通和对兑换状态的更新。 -报表:为了记录与奖品相关的数据以及评价抽奖的效果,系统必须能够生成动态的报表,包括关键业务指标、统计分析和趋势分析。 4. 总结 抽奖系统具有良好的用户参与度和互动性,在电商、金融、娱乐等领域被广泛应用。本文主要介绍了利用前端技术和工具如 JS/CSS/HTML制作一个基于网页抽奖系统的方法和步骤。实现抽奖系统需要深刻理解需求,掌握必要的技术和工具,同时进行创新,不断提高用户参与度和系统的安全性。 ### 回答3: 抽奖系统是一个很常见的应用场景,它可以通过网页的形式来进行实现,用户可以通过点击按钮或者其他交互方式来进行抽奖。下面,我们就来介绍一下如何用JSCSS以及HTML来打造一个基于网页抽奖系统。 一、前期准备 在开始编写抽奖系统之前,首先需要完成以下几个步骤: 1.定制抽奖奖品。需要提前确定抽奖奖品的种类、数量以及概率等要素。 2.编写 HTML 结构。需要先将抽奖页面的整体框架构建好,包括奖品展示区、抽奖按钮、中奖提示框等。 3.为页面添加 CSS 样式。需要为页面的各个元素添加美观的样式,使其更符合用户的审美。 二、功能实现 1.生成随机数。抽奖系统利用随机数来进行抽奖,可以利用 JS 的 Math.random() 方法来获取 0-1 之间的随机数。 2.奖品概率计算。将所有奖品的中奖概率计算好,通过生成的随机数来判断中哪个奖品。 3.抽奖动画。为了让用户更加有参与感,可以添加一些动画效果,比如旋转转盘、抽奖球等。 4.中奖提示。抽奖完成后需要对用户进行中奖提示,可以将中奖奖品展示在页面中,并弹出提示框进行提示。 5.抽奖次数限制。可以通过计数器来限制用户每天或每次参与抽奖的次数,避免用户刷票刷奖。 三、应用场景 抽奖系统常常被应用于商场等场所的营销促销活动中,可以吸引更多的用户参与到营销活动中,促进销售量的增长。此外,在微信公众号、app应用等平台上的抽奖活动也很受欢迎,可以为企业带来更多的关注度。 总的来说,利用JSCSS以及HTML制作一个基于网页抽奖系统并不难,只要具备一定的前端开发经验和基础知识,就可以很轻松地完成。抽奖系统的应用场景也很广泛,可以帮助企业吸引更多的眼球,促进销售增长,也可以为用户带来更多的福利和乐趣。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值