JS实现漂亮的登录页面(氛围感页面)

代码:

javascript 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>登录</title>
    <style>
        body{
            background-color: #ece9f0;
        }
        .box{
            width: 800px;
            height: 300px;
            margin: 0 auto;
            margin-top: 20px;
            box-shadow: 0px 0px 20px black;
            background-color: #c8e0c8;
            padding-top: 30px;
            text-align: center;
            font-size: 18px;
        }
  
       label{
            display: inline-block;
            width: 80px;
       }
       .msg{
            margin-top: 20px;
       }
       input{
            height: 20px;
            border: 0;
       }
       input::placeholder{
            color: #f7c7d9;
       }
       .zc{
            font-size: 30px;
            font-weight: bold;
       }
       .djzc{
            color: skyblue;
            border: 0;
            font-weight: bold;
            width: 80px;
            height: 30px;
       }
    </style> 
</head>
<body>
    <div class="box">
       <div class="zc">登录页</div>
       <div class="msg">
            <label class="yhm">用户名:</label><input type="text" placeholder="请输入用户名">
       </div>
       
       <div class="msg">
            <label class="pwd">密码:</label><input type="password" placeholder="请输入密码">
       </div>
       
       <div class="msg">
            <button class="djzc" onclick="registerfun()">点击登录</button>
       </div>
       
    </div>
    <script src="https://api.vvhan.com/api/script/snow"></script>
    <script src="https://api.vvhan.com/api/script/bolang"></script>
    <script src="https://api.vvhan.com/api/script/yinghua"></script>
    <script src="https://api.vvhan.com/api/script/yinghua"></script>
    <script src="https://api.vvhan.com/api/script/denglong"></script>
    <script>
        let box = document.querySelector('.box')
        let zc = document.querySelector('.zc')
        let yhm = document.querySelector('.yhm')
        let pwd = document.querySelector('.pwd')


        setInterval(()=>{
            box.style.boxShadow=`0px 0px 20px rgb(${sj()},${sj()},${sj()})`
            zc.style.color=`rgb(${sj()},${sj()},${sj()})`
            yhm.style.color=`rgb(${sj()},${sj()},${sj()})`
            pwd.style.color=`rgb(${sj()},${sj()},${sj()})`
            zc.style.textShadow=` 0px 0px 10px rgb(${sj()},${sj()},${sj()})`
        },1000)
        function sj(){
            return Math.floor(Math.random()*255)
        }
         // 点击之后的注册方法
         function registerfun(params) {
             // 获取输入框的内容
            let user_name = document.querySelectorAll('input')[0].value
            let password = document.querySelectorAll('input')[1].value
            // 准备ajax向后端发送数据
            let xhr = new XMLHttpRequest()
            // 请求方式和请求地址
            xhr.open('post','http://api.poiuy.top/users/login')
            xhr.setRequestHeader('Content-type','application/json')
            xhr.send(JSON.stringify({
                user_name,
                password,
            }))
            xhr.onload= function(params) {
                let data = JSON.parse(xhr.responseText);
                let token = data.result.token
                    console.log(token);
                localStorage.setItem('token',token)
                    // 判断状态码
                    // 如果是0代表成功 跳转到登陆
                if (data.code==0) {
                    alert('登录成功,即将跳转列表页')
                    location.href = 'list.html'
                }else{
                    // 否则提示错误信息
                    alert(data.message)
                }  
            }  
        }
        
       
  
    </script>
</body>
</html>

效果图:

相关推荐
道清茗17 分钟前
【shell编程知识点汇总】第九章 HTML 清洗、多行合并与条件替换
前端·html
噢,我明白了1 小时前
表单的完整 CRUD 练习【极简个人记账本】(含前端后端链接mySQL)
java·前端·数据库·mysql
幽络源小助理1 小时前
MacCMSPro版视频影视系统源码_全开源高可用视频平台解决方案
前端·php·php源码
不会敲代码18 小时前
手写 Zustand:三十分钟带你搞懂状态管理库的核心原理
前端·javascript·源码
神奇的程序员8 小时前
重构了自己5年前写的截图插件
前端·javascript·架构
橙淮8 小时前
从优化到安全再到未来 ——JavaScript 全维度技术指南
javascript
UXbot9 小时前
一人独立交付 UI + 前端:AI 驱动 UI 设计工具的五大功能模块深度评测
前端·低代码·ui·设计模式·交互
kobesdu9 小时前
【ROS2实战笔记-19】ROS2 生命周期节点的启动顺序、状态转换陷阱与热备方案
java·前端·笔记·机器人·ros·ros2
诚实可靠王大锤9 小时前
React Native 输入框与按钮焦点冲突解决方案(rn版本0.70.3)
前端·javascript·react native·react.js
kyriewen10 小时前
测试妹子让我写单测,我偷偷用AI一天干完一周的活
前端·chatgpt·cursor