likes
comments
collection
share

优化用户体验:Ajax助力动态登录界面设计大家好,今天我们来一起探讨如何利用Ajax技术实现一个更加动态化和友好的登录界

作者站长头像
站长
· 阅读数 38

引言

大家好,今天我们来一起探讨如何利用Ajax技术实现一个更加动态化和友好的登录界面。随着Web技术的不断发展,用户对于网站的登录界面也有了更高的要求,希望通过本文的实战操作,能够帮助大家更好地掌握Ajax在登录界面中的应用。

效果图

在开始介绍具体实现方法之前,先让我们来欣赏一下我们即将实现的网易云登录界面效果图。这是一个拥有动态验证、实时反馈的登录界面,让用户体验更加流畅。

优化用户体验:Ajax助力动态登录界面设计大家好,今天我们来一起探讨如何利用Ajax技术实现一个更加动态化和友好的登录界 优化用户体验:Ajax助力动态登录界面设计大家好,今天我们来一起探讨如何利用Ajax技术实现一个更加动态化和友好的登录界

HTML 部分

首先,我们需要编写HTML代码来构建登录界面的基本结构。在登录界面中,通常会包含用户名输入框、密码输入框、登录按钮等元素。通过HTML代码,我们可以将这些元素进行布局和样式的设置,为后续的交互操作做好准备。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./index.css">
</head>

<body>
    <div class="bg">
        <div class="title">网易云音乐</div>
        <img src="./wangyi.png" alt="">
        <div class="login">
            <div class="tab">
                <div class="text">账号</div>
                <input type="text" placeholder="输入手机号" id="phone">
            </div>
            <div class="tab password">
                <div class="text">密码</div>
                <input type="password" placeholder="输入密码" id="password">
            </div>
        </div>
        <button class="btn">登录</button>
        <div class="success">
            <div class="jiegou">
                <div class="gou"></div>
                <p>登录成功</p>
            </div>

        </div>
    </div>

    <script src="./index.js"></script>
</body>

</html>

CSS 部分

接下来,让我们为登录界面添加一些样式,使其看起来更加美观和吸引人。通过CSS代码的设置,我们可以调整各个元素的大小、颜色、间距等,让整个界面呈现出一种简洁、现代的效果。

* {
    padding: 0;
    margin: 0;
}


.bg {
    height: 100vh;
    background-color: rgb(212, 48, 48);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.title {
    text-align: center;
    color: #fff;
    padding-top: 18px;
    font-size: 18px;
}

/* .logo {
    text-align: center;
    margin-top: 70px;
} */

img {
    margin-top: 70px;
    width: 139px;
    height: 139px;
    background-size: cover;
}

.login {
    margin-top: 160px;
}

.tab {
    display: flex;
    align-items: center;
}

.text {
    color: #fff;
    font-size: 20px;
    width: 40px;
    height: 30px;
    line-height: 30px;
    margin-right: 24px;
}

.tab input {
    width: 211px;
    height: 42px;
    font-style: 16px;
    background-color: transparent;
    border: 1px solid #fff;
    padding-left: 5px;
    border-radius: 5px;
    color: white;
}

.tab input::placeholder {
    color: white;
}

.password {
    margin-top: 35px;
}

.btn {
    margin-top: 50px;
    width: 271px;
    height: 36px;
    background-color: #fff;
    border-radius: 16px;
    border: none;
    outline: none;
}

.success {
    /* display: none; */
    position: absolute;
    top: 125px;
    left: 120px;
    width: 141px;
    height: 141px;
    background-color: rgba(128, 128, 128, 0.8);
    border-radius: 8px;

}

.jiegou {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.gou {
    background-image: url("./gou.png");
    height: 100px;
    width: 100px;
    background-size: cover;
}

.success p {
    margin-top: 10px;
    color: #fff;
    font-size: 16px;

}

JS 部分

最关键的部分来了!通过JavaScript代码,我们可以实现与服务器端的数据交互,实现用户名和密码的验证、登录状态的反馈等功能。结合Ajax技术,我们可以在不刷新整个页面,而进行局部刷新的情况下,实现登录操作并及时更新界面信息。

var btn = document.querySelector('.btn')

btn.addEventListener('click', () => {
    var phone = document.getElementById('phone').value;
    var password = document.getElementById('password').value;


    fetch(`http://192.168.1.83:3000/login?username=${phone}&password=${password}`)
        .then((res) => {
            return res.json();
        })
        .then((data) => {
            document.querySelector('.success').style.display = 'block';
            setTimeout(() => {
                document.querySelector('.success').style.display = 'none';
            }, 2000)
        })
})

结语

通过本文的介绍,相信大家对于如何利用Ajax技术实现一个更加动态化和友好的登录界面有了进一步的理解。登录界面是用户与网站打交道的第一步,一个用户体验良好的登录界面不仅可以提升用户的使用体验,也能增强用户对网站的粘性。如果你觉得这篇文章有帮助或有所启发,别忘了给我一个鼓励的

转载自:https://juejin.cn/post/7370245187640279059
评论
请登录