leaderboard.js

This commit is contained in:
Evelyn 2025-12-16 11:03:32 +07:00
parent 120b93aba5
commit 4d341adacb
3 changed files with 124 additions and 132 deletions

View File

@ -3,125 +3,7 @@
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>Leaderboard</title> <title>Leaderboard</title>
<link rel="stylesheet" href="assets/leaderboard.css">
<style>
body {
margin: 0;
font-family: Arial, sans-serif;
background: linear-gradient(135deg, #c42ddf, #fe8bb4);
color: white;
}
.topbar {
display: flex;
justify-content: space-between;
align-items: center;
padding: 15px;
}
.back-btn, .logout-btn {
background: white;
padding: 8px 15px;
border-radius: 20px;
border: none;
}
.profile {
display: flex;
align-items: center;
gap: 8px;
}
.profile-icon {
background: #d05dec;
width: 35px;
height: 35px;
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center;
font-weight: bold;
}
.title {
text-align: center;
font-size: 32px;
margin-top: 10px;
}
.subtitle {
text-align: center;
margin-top: -10px;
}
.filter-container {
margin: 20px;
display: flex;
align-items: center;
gap: 10px;
}
.filter-btn {
background: rgba(255,255,255,0.3);
border: none;
padding: 8px 20px;
border-radius: 20px;
cursor: pointer;
color: white;
font-weight: bold;
}
.filter-btn.active {
background: white;
color: #000000;
}
le {
width: 95%;
margin: auto;
border-collapse: collapse;
background: rgba(255,255,255,0.15);
border-radius: 10px;
overflow: hidden;
}
th, td {
padding: 12px;
text-align: center;
}
thead {
background: rgba(255,255,255,0.2);
}
.tag {
padding: 4px 10px;
border-radius: 12px;
font-size: 13px;
color: black;
}
.hard { background: #ff6b6b; }
.medium { background: #ffe86a; }
.easy { background: #7ddf8c; }
.cards {
display: flex;
justify-content: space-around;
margin: 40px 20px;
}
.card {
width: 28%;
padding: 20px;
background: rgba(255,255,255,0.25);
text-align: center;
border-radius: 15px;
}
.card h2 {
color: rgb(255, 0, 0);
}
</style>
</head> </head>
<body> <body>
@ -161,18 +43,6 @@ thead {
<span id="baseScoreEnd">0</span></div></p> <span id="baseScoreEnd">0</span></div></p>
</div> </div>
</div> </div>
<script src="assets/leaderboard.js"></script>
<script>
const buttons = document.querySelectorAll(".filter-btn");
buttons.forEach(btn => {
btn.addEventListener("click", function () {
buttons.forEach(b => b.classList.remove("active"));
this.classList.add("active");
});
});
</script>
</body> </body>
</html> </html>

114
assets/leaderboard.css Normal file
View File

@ -0,0 +1,114 @@
body {
margin: 0;
font-family: Arial, sans-serif;
background: linear-gradient(135deg, #c42ddf, #fe8bb4);
color: white;
}
.topbar {
display: flex;
justify-content: space-between;
align-items: center;
padding: 15px;
}
.back-btn, .logout-btn {
background: white;
padding: 8px 15px;
border-radius: 20px;
border: none;
}
.profile {
display: flex;
align-items: center;
gap: 8px;
}
.profile-icon {
background: #d05dec;
width: 35px;
height: 35px;
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center;
font-weight: bold;
}
.title {
text-align: center;
font-size: 32px;
margin-top: 10px;
}
.subtitle {
text-align: center;
margin-top: -10px;
}
.filter-container {
margin: 20px;
display: flex;
align-items: center;
gap: 10px;
}
.filter-btn {
background: rgba(255,255,255,0.3);
border: none;
padding: 8px 20px;
border-radius: 20px;
cursor: pointer;
color: white;
font-weight: bold;
}
.filter-btn.active {
background: white;
color: #000000;
}
le {
width: 95%;
margin: auto;
border-collapse: collapse;
background: rgba(255,255,255,0.15);
border-radius: 10px;
overflow: hidden;
}
th, td {
padding: 12px;
text-align: center;
}
thead {
background: rgba(255,255,255,0.2);
}
.tag {
padding: 4px 10px;
border-radius: 12px;
font-size: 13px;
color: black;
}
.hard { background: #ff6b6b; }
.medium { background: #ffe86a; }
.easy { background: #7ddf8c; }
.cards {
display: flex;
justify-content: space-around;
margin: 40px 20px;
}
.card {
width: 28%;
padding: 20px;
background: rgba(255,255,255,0.25);
text-align: center;
border-radius: 15px;
}
.card h2 {
color: rgb(255, 0, 0);
}

8
assets/leaderboard.js Normal file
View File

@ -0,0 +1,8 @@
const buttons = document.querySelectorAll(".filter-btn");
buttons.forEach(btn => {
btn.addEventListener("click", function () {
buttons.forEach(b => b.classList.remove("active"));
this.classList.add("active");
});
});