html css js做的在线签到例子

图片

921457e23a4b47ea87e757ed3b5e4ee3.jpg

 代码

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>在线签到系统</title>

<style>

    body {

        font-family: Arial, sans-serif;

        background-color: #f0f8ff;

        padding: 20px;

    }

    .container {

        background-color: white;

        border-radius: 10px;

        box-shadow: 0 0 10px rgba(0,0,0,0.1);

        padding: 20px;

        width: 300px;

        margin: auto;

        text-align: center; /* 居中内容 */

    }

    input[type=text], input[type=email] {

        width: 100%;

        padding: 10px;

        margin: 5px 0 15px 0;

        border: 1px solid #b3b3b3;

        border-radius: 5px;

        box-sizing: border-box;

    }

    button {

        background-color: #4d90fe; /* 蓝色背景 */

        color: white;

        padding: 10px 25px; /* 调整宽度 */

        border: none;

        border-radius: 5px;

        cursor: pointer;

    }

    button:hover {

        background-color: #4787ed; /* 鼠标悬停时的蓝色 */

    }

    .alert {

        color: red;

        display: none;

    }

    table {

        width: 100%;

        margin-top: 20px;

        border-collapse: collapse;

    }

    th, td {

        border: 1px solid #ddd;

        padding: 8px;

        text-align: left;

        border-radius: 5px;

    }

    th {

        background-color: #4d90fe; /* 蓝色背景 */

        color: white;

    }

    tr:nth-child(even) {

        background-color: #f2f2f2;

    }

</style>

<script>

    function checkIn() {

        var name = document.getElementById("name").value.trim(); // 去除前后空格

        var email = document.getElementById("email").value.trim();

        var alert = document.getElementById("alert");

        var checkInList = document.getElementById("checkInList");

 

        if (name === "" || email === "") {

            alert.textContent = "姓名和邮箱不能为空!";

            alert.style.display = "block";

            return;

        } else if (localStorage.getItem(email + "_checked")) { // 使用_email_checked避免冲突

            alert.textContent = "您已签到过!";

            alert.style.display = "block";

            return;

        } else {

            localStorage.setItem(email + "_checked", "true");

            alert.textContent = "签到成功!";

            alert.style.display = "block";

 

            // 添加签到记录到表格

            var newRow = checkInList.insertRow(-1);

            var nameCell = newRow.insertCell(0);

            var emailCell = newRow.insertCell(1);

            nameCell.textContent = name;

            emailCell.textContent = email;

 

            // 清空输入框

            document.getElementById("name").value = "";

            document.getElementById("email").value = "";

 

            setTimeout(function() {

                alert.style.display = "none";

            }, 2000);

        }

    }

</script>

</head>

<body>

 

<div class="container">

    <h2>在线签到</h2>

    <input type="text" id="name" placeholder="姓名" required>

    <input type="email" id="email" placeholder="邮箱" required>

    <button οnclick="checkIn()">签到</button>

    <p id="alert" class="alert"></p>

    <h3>签到记录</h3>

    <table>

        <thead>

            <tr>

                <th>姓名</th>

                <th>邮箱</th>

            </tr>

        </thead>

        <tbody id="checkInList">

            <!-- 签到记录将动态插入此处 -->

        </tbody>

    </table>

</div>

 

</body>

</html>

 

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

睿智的海鸥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值