首页 前端知识 web前端第三次作业:登录窗口拖动效果

web前端第三次作业:登录窗口拖动效果

2025-03-15 13:03:55 前端知识 前端哥 148 261 我要收藏

<!DOCTYPE html>

<html lang="zh">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>登录窗口拖动效果</title>

    <style>

        * {margin: 0;padding: 0;box-sizing: border-box;}

        html,body {width: 100%;height: 100%;}

        .container {width: 100%;height: 100%;background-color: #f2f1f2;}

        header {

            width: 1200px;

            height: 50px;

            background-color: #fff;

            margin: 0 auto;

            display: flex;

            justify-content: space-between;

            align-items: center;

        }

        header div:nth-last-of-type(2) {

            display: flex;

            gap: 20px;

            cursor: pointer;

        }

        header div:nth-last-of-type(2) span:hover {

            font-weight: bolder;

            color: red;

        }

        .login-box {

            display: none;

            overflow: hidden;

            width: 300px;

            height: 200px;

            background-color: #fff;

            border: solid 1px orangered;

            border-radius: 8px;

            box-shadow: rgba(255,0,0,0.5) 5px 5px 5px;

            position: absolute;

            left: 1150px;

            top: 50px;

        }

        .login-box .header {

            height: 40px;

            background-color: orangered;

            display: flex;

            justify-content: space-between;

            align-items: center;

            color: white;

            cursor: pointer;

            padding: 0 10px;

        }

    </style>

</head>

<body>

    <div class="container">

        <header>

            <div>

                <span>欢迎访问OPENLAB EDU</span>

            </div>

            <div>

                <span id="login">登录</span>

                <span id="register">注册</span>

            </div>

            <div class="login-box" id="login-box">

                <div class="header" id="header">

                    <span>会员登录</span>

                    <span id="close">[关闭]</span>

                </div>

            </div>

        </header>

    </div>

    <script>

        let _login = document.getElementById("login");

        let _login_box = document.getElementById("login-box");

        _login.onclick = function () {

            _login_box.style.display = "block";

        }

        let _close = document.getElementById("close");

        _close.onclick = function () {

            _login_box.style.display = "none";

        }

        let _header = document.getElementById("header");

       

        document.onmousedown = function (event) {

            let offsetX = event.offsetX;

            let offsetY = event.offsetY;

            _header.onmousemove = function (event2) {

                let mouseX = event2.clientX;

                let mouseY = event2.clientY;

                let loginX = mouseX - offsetX + "px";

                let loginY = mouseY - offsetY + "px";

                _login_box.style.left = loginX;

                _login_box.style.top = loginY;

            }

        }

        document.onmouseup = function () {

            _header.onmousemove = null;

        }

    </script>

</body>

</html>

转载请注明出处或者链接地址:https://www.qianduange.cn//article/23695.html
标签
评论
会员中心 联系我 留言建议 回顶部
浏览器升级提示:您的浏览器版本较低,建议您立即升级为知了极速浏览器,极速、安全、简约,上网速度更快!立即下载
复制成功!