用js写一个登录注册页面
时间: 2024-05-29 08:04:31 浏览: 10
由于您没有提供具体需求,以下是一个基本的登录注册页面的示例:
HTML代码:
```
<!DOCTYPE html>
<html>
<head>
<title>Login/Register</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div class="container">
<div class="form-container">
<form id="login-form" class="input-group">
<h2>Login</h2>
<input type="text" id="login-username" placeholder="Username" required>
<input type="password" id="login-password" placeholder="Password" required>
<button type="submit" id="login-button">Login</button>
</form>
<form id="register-form" class="input-group hidden">
<h2>Register</h2>
<input type="text" id="register-username" placeholder="Username" required>
<input type="email" id="register-email" placeholder="Email" required>
<input type="password" id="register-password" placeholder="Password" required>
<button type="submit" id="register-button">Register</button>
</form>
<div class="toggle-form">
<p>Don't have an account? <a href="#" id="register-link">Register here</a></p>
<p>Already have an account? <a href="#" id="login-link">Login here</a></p>
</div>
</div>
</div>
<script src="script.js"></script>
</body>
</html>
```
CSS代码:
```
body {
font-family: Arial, sans-serif;
margin: 0;
padding: 0;
background-color: #f2f2f2;
}
.container {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
}
.form-container {
background-color: #fff;
border-radius: 20px;
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
padding: 30px;
width: 400px;
}
.input-group {
display: flex;
flex-direction: column;
align-items: center;
}
.input-group input {
width: 100%;
padding: 10px;
margin: 10px 0;
border: none;
border-radius: 5px;
box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
}
.input-group button {
width: 100%;
padding: 10px;
margin: 10px 0;
border: none;
border-radius: 5px;
background-color: #0066cc;
color: #fff;
font-weight: bold;
cursor: pointer;
}
.hidden {
display: none;
}
.toggle-form {
display: flex;
flex-direction: column;
align-items: center;
margin-top: 20px;
}
.toggle-form a {
color: #0066cc;
cursor: pointer;
}
```
JavaScript代码:
```
// 获取 DOM 元素
const loginForm = document.getElementById('login-form');
const loginUsername = document.getElementById('login-username');
const loginPassword = document.getElementById('login-password');
const loginButton = document.getElementById('login-button');
const registerForm = document.getElementById('register-form');
const registerUsername = document.getElementById('register-username');
const registerEmail = document.getElementById('register-email');
const registerPassword = document.getElementById('register-password');
const registerButton = document.getElementById('register-button');
const registerLink = document.getElementById('register-link');
const loginLink = document.getElementById('login-link');
// 注册表单切换
registerLink.addEventListener('click', () => {
loginForm.classList.add('hidden');
registerForm.classList.remove('hidden');
});
loginLink.addEventListener('click', () => {
loginForm.classList.remove('hidden');
registerForm.classList.add('hidden');
});
// 登录表单提交
loginForm.addEventListener('submit', (event) => {
event.preventDefault();
const username = loginUsername.value;
const password = loginPassword.value;
// TODO: 登录验证逻辑
console.log('username:', username);
console.log('password:', password);
});
// 注册表单提交
registerForm.addEventListener('submit', (event) => {
event.preventDefault();
const username = registerUsername.value;
const email = registerEmail.value;
const password = registerPassword.value;
// TODO: 注册验证逻辑
console.log('username:', username);
console.log('email:', email);
console.log('password:', password);
});
```
以上代码实现了一个简单的登录注册页面,其中包括登录表单和注册表单的切换、表单提交逻辑的处理。需要注意的是,这只是一个基本示例,实际开发中需要根据具体需求进行调整和完善。