用bootstrap4和jq,写一个的登录页面,带两个背景图片的,左边图片右边填写登录信息,不需要调用后端接口,前端校验账号密码,生成一个随机token,token过期时间为12小时
时间: 2023-09-08 07:08:51 浏览: 93
好的,我可以为您提供一个简单的登录页面的代码,基于Bootstrap4和jQuery,并带有两个背景图片。代码如下:
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Login Page</title>
<link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/4.0.0/css/bootstrap.min.css">
<style>
.bg-image {
background: url("background1.jpg");
background-size: cover;
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
}
.form-container {
background: url("background2.jpg");
background-size: cover;
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
}
.form-container form {
width: 400px;
padding: 20px;
border-radius: 10px;
background-color: rgba(255, 255, 255, 0.9);
}
.form-container h2 {
text-align: center;
margin-bottom: 20px;
}
.form-container label {
font-weight: bold;
}
.form-container input[type="text"],
.form-container input[type="password"] {
width: 100%;
padding: 10px;
margin-bottom: 20px;
border: none;
border-radius: 5px;
}
.form-container input[type="submit"] {
width: 100%;
padding: 10px;
margin-top: 20px;
border: none;
border-radius: 5px;
background-color: #007bff;
color: #fff;
font-weight: bold;
cursor: pointer;
}
</style>
</head>
<body>
<div class="container-fluid">
<div class="row">
<div class="col-md-6 bg-image">
<!-- Left Background Image -->
</div>
<div class="col-md-6 form-container">
<!-- Login Form -->
<form id="login-form">
<h2>Login</h2>
<div class="form-group">
<label for="username">Username:</label>
<input type="text" class="form-control" id="username" name="username" required>
</div>
<div class="form-group">
<label for="password">Password:</label>
<input type="password" class="form-control" id="password" name="password" required>
</div>
<input type="submit" class="btn btn-primary" value="Login">
</form>
</div>
</div>
</div>
<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script>
$(function () {
$('#login-form').submit(function (event) {
event.preventDefault();
var username = $('#username').val();
var password = $('#password').val();
// 这里可以添加前端校验逻辑
// 生成随机token
var token = Math.random().toString(36).substr(2) + Math.random().toString(36).substr(2);
// 设置过期时间为12小时
var expires = new Date(new Date().getTime() + 12 * 60 * 60 * 1000).toUTCString();
// 将token和过期时间保存到LocalStorage
localStorage.setItem('token', token);
localStorage.setItem('expires', expires);
// 跳转到首页
window.location.href = 'index.html';
});
});
</script>
</body>
</html>
```
解释一下代码:
1. 使用Bootstrap4的网格系统,将页面分为两个列,左侧占6个网格,右侧占6个网格。
2. 左侧使用`bg-image`类设置背景图片,并在其中垂直居中显示内容。
3. 右侧使用`form-container`类设置背景图片,并在其中垂直居中显示表单。
4. 表单使用`form`元素,并包含用户名和密码的输入框以及登录按钮。
5. 使用jQuery监听表单的提交事件,并阻止默认的提交行为。
6. 获取用户名和密码的值,并可以添加前端校验逻辑。
7. 生成随机token,并将其和过期时间保存到LocalStorage中。
8. 跳转到首页。
注意:为了使生成的token和过期时间在浏览器关闭后依然保持,这里使用了LocalStorage。但是LocalStorage并不是完全安全的,因此在实际应用中需要根据具体情况选择更安全的方式来保存token和过期时间。
阅读全文