502 lines
15 KiB
HTML
502 lines
15 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en" dir="auto">
|
|
|
|
<head><meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
|
<meta name="robots" content="index, follow">
|
|
<title>用户自助添加密钥页 | NEU小站</title>
|
|
<meta name="keywords" content="">
|
|
<meta name="description" content="用户自助添加密钥页 - NEU小站">
|
|
<meta name="author" content="
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
V
|
|
|
|
|
|
|
|
|
|
|
|
V
|
|
|
|
|
|
|
|
|
|
|
|
|
|
">
|
|
<link rel="canonical" href="https://xn--xhq44jb2fzpc.com/invitecode/">
|
|
|
|
<link rel="stylesheet" href="/css/custom.css">
|
|
|
|
<link rel="stylesheet" href="/css/dl.css">
|
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.css" rel="preload stylesheet" as="style">
|
|
<link rel="icon" href="https://xn--xhq44jb2fzpc.com/icons/favicon.ico">
|
|
<link rel="icon" type="image/png" sizes="16x16" href="https://xn--xhq44jb2fzpc.com/icons/favicon-16x16.png">
|
|
<link rel="icon" type="image/png" sizes="32x32" href="https://xn--xhq44jb2fzpc.com/icons/favicon-32x32.png">
|
|
<link rel="apple-touch-icon" href="https://xn--xhq44jb2fzpc.com/icons/apple-touch-icon.png">
|
|
<link rel="mask-icon" href="https://xn--xhq44jb2fzpc.com/safari-pinned-tab.svg">
|
|
<meta name="theme-color" content="#2e2e33">
|
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
|
<link rel="alternate" type="application/rss+xml" href="https://xn--xhq44jb2fzpc.com/invitecode/index.xml">
|
|
<link rel="alternate" hreflang="en" href="https://xn--xhq44jb2fzpc.com/invitecode/">
|
|
<noscript>
|
|
<style>
|
|
#theme-toggle,
|
|
.top-link {
|
|
display: none;
|
|
}
|
|
|
|
</style>
|
|
<style>
|
|
@media (prefers-color-scheme: dark) {
|
|
:root {
|
|
--theme: rgb(29, 30, 32);
|
|
--entry: rgb(46, 46, 51);
|
|
--primary: rgb(218, 218, 219);
|
|
--secondary: rgb(155, 156, 157);
|
|
--tertiary: rgb(65, 66, 68);
|
|
--content: rgb(196, 196, 197);
|
|
--code-block-bg: rgb(46, 46, 51);
|
|
--code-bg: rgb(55, 56, 62);
|
|
--border: rgb(51, 51, 51);
|
|
}
|
|
|
|
.list {
|
|
background: var(--theme);
|
|
}
|
|
|
|
.list:not(.dark)::-webkit-scrollbar-track {
|
|
background: 0 0;
|
|
}
|
|
|
|
.list:not(.dark)::-webkit-scrollbar-thumb {
|
|
border-color: var(--theme);
|
|
}
|
|
}
|
|
|
|
</style>
|
|
</noscript>
|
|
|
|
|
|
<meta property="og:title" content="用户自助添加密钥页" />
|
|
<meta property="og:description" content="" />
|
|
<meta property="og:type" content="website" />
|
|
<meta property="og:url" content="https://xn--xhq44jb2fzpc.com/invitecode/" />
|
|
|
|
<meta name="twitter:card" content="summary"/>
|
|
<meta name="twitter:title" content="用户自助添加密钥页"/>
|
|
<meta name="twitter:description" content=""/>
|
|
|
|
|
|
<script type="application/ld+json">
|
|
{
|
|
"@context": "https://schema.org",
|
|
"@type": "BreadcrumbList",
|
|
"itemListElement": [
|
|
{
|
|
"@type": "ListItem",
|
|
"position": 1 ,
|
|
"name": "用户自助添加密钥页",
|
|
"item": "https://xn--xhq44jb2fzpc.com/invitecode/"
|
|
}
|
|
]
|
|
}
|
|
</script>
|
|
|
|
<link rel="stylesheet" href="/css/custom.css">
|
|
</head>
|
|
|
|
<body class="list" id="top">
|
|
<script>
|
|
if (localStorage.getItem("pref-theme") === "dark") {
|
|
document.body.classList.add('dark');
|
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
|
document.body.classList.remove('dark')
|
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
|
document.body.classList.add('dark');
|
|
}
|
|
|
|
</script>
|
|
|
|
<header class="header">
|
|
<nav class="nav">
|
|
<div class="logo">
|
|
<a href="https://xn--xhq44jb2fzpc.com/" accesskey="h" title="NEU小站 (Alt + H)">NEU小站</a>
|
|
<div class="logo-switches">
|
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)">
|
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
|
stroke-linejoin="round">
|
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
|
</svg>
|
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
|
stroke-linejoin="round">
|
|
<circle cx="12" cy="12" r="5"></circle>
|
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
|
</svg>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
<ul id="menu">
|
|
<li>
|
|
<a href="https://xn--xhq44jb2fzpc.com/" title="主页">
|
|
<span>主页</span>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href="https://course.%e4%b8%9c%e5%8c%97%e5%a4%a7%e5%ad%a6.com" title="课程评分"target="_blank">
|
|
<span>课程评分</span>
|
|
<svg fill="none" shape-rendering="geometricPrecision" stroke="currentColor" stroke-linecap="round"
|
|
stroke-linejoin="round" stroke-width="2.5" viewBox="0 0 24 24" height="12" width="12">
|
|
<path d="M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6"></path>
|
|
<path d="M15 3h6v6"></path>
|
|
<path d="M10 14L21 3"></path>
|
|
</svg>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href="https://xn--xhq44jb2fzpc.com/strategy/" title="攻略指南">
|
|
<span>攻略指南</span>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href="https://xn--xhq44jb2fzpc.com/rapidlinks/%E5%BF%AB%E9%80%9F%E9%93%BE%E6%8E%A5/" title="快速链接">
|
|
<span>快速链接</span>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href="https://xn--xhq44jb2fzpc.com/resources/" title="资源共享">
|
|
<span>资源共享</span>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href="https://xn--xhq44jb2fzpc.com/search/" title="搜索">
|
|
<span>搜索</span>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href="https://f.wps.cn/g/QuaZnovL/" title="意见反馈"target="_blank">
|
|
<span>意见反馈</span>
|
|
<svg fill="none" shape-rendering="geometricPrecision" stroke="currentColor" stroke-linecap="round"
|
|
stroke-linejoin="round" stroke-width="2.5" viewBox="0 0 24 24" height="12" width="12">
|
|
<path d="M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6"></path>
|
|
<path d="M15 3h6v6"></path>
|
|
<path d="M10 14L21 3"></path>
|
|
</svg>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href="https://xn--xhq44jb2fzpc.com/submission/" title="用户中心">
|
|
<span>用户中心</span>
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href="https://xn--xhq44jb2fzpc.com/log/" title="更新日志">
|
|
<span>更新日志</span>
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</nav>
|
|
</header>
|
|
|
|
<main class="main">
|
|
<script src="https://download.东北大学.com/password/ptsubmit.min.js"></script>
|
|
|
|
<style>
|
|
body {
|
|
font-family: Arial, sans-serif;
|
|
background-color: #f4f4f4;
|
|
color: #333;
|
|
padding: 20px;
|
|
}
|
|
|
|
.dark {
|
|
background-color: #2c2c2c;
|
|
color: #fff;
|
|
}
|
|
|
|
.container {
|
|
max-width: 500px;
|
|
margin: 0 auto;
|
|
background-color: #fff;
|
|
padding: 20px;
|
|
border-radius: 10px;
|
|
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
|
|
}
|
|
|
|
.dark .container {
|
|
background-color: #444;
|
|
}
|
|
|
|
h1 {
|
|
text-align: center;
|
|
}
|
|
|
|
label {
|
|
display: block;
|
|
margin-bottom: 8px;
|
|
font-weight: bold;
|
|
}
|
|
|
|
input[type="text"], input[type="password"] {
|
|
width: 100%;
|
|
padding: 10px;
|
|
margin-bottom: 20px;
|
|
border: 1px solid #ddd;
|
|
border-radius: 5px;
|
|
}
|
|
|
|
.dark input[type="text"], .dark input[type="password"] {
|
|
background-color: #333;
|
|
color: #fff;
|
|
border: 1px solid #555;
|
|
}
|
|
|
|
|
|
.button-container {
|
|
display: flex;
|
|
justify-content: center;
|
|
}
|
|
|
|
.submit-btn {
|
|
padding: 10px 20px;
|
|
background-color: #007BFF;
|
|
color: white;
|
|
border: none;
|
|
border-radius: 5px;
|
|
cursor: pointer;
|
|
text-align: center;
|
|
}
|
|
|
|
.dark .submit-btn {
|
|
background-color: #0056b3;
|
|
}
|
|
|
|
.submit-btn:hover {
|
|
background-color: #0056b3;
|
|
}
|
|
|
|
.dark .submit-btn:hover {
|
|
background-color: #003f7f;
|
|
}
|
|
|
|
.error {
|
|
color: red;
|
|
margin-bottom: 20px;
|
|
}
|
|
</style>
|
|
|
|
<div class="container">
|
|
<h1>密钥自助平台</h1>
|
|
<div id="error-message" class="error"></div>
|
|
|
|
<label for="invite-code">请输入邀请码:</label>
|
|
<input type="text" id="invite-code" placeholder="请输入邀请码">
|
|
|
|
<label for="custom-key">请输入自定义密钥:</label>
|
|
<input type="password" id="custom-key" placeholder="请输入自定义密钥">
|
|
|
|
<div class="button-container">
|
|
<button class="submit-btn" onclick="submitForm()">设置密钥</button>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</main>
|
|
|
|
<footer class="footer">
|
|
<span>© 2024 <a href="https://xn--xhq44jb2fzpc.com/">NEU小站</a></span> ·
|
|
<span id="ember-container">
|
|
联系网站管理员
|
|
<div id="qr-code" class="hidden">
|
|
<img src="https://www.xn--xhq44jb2fzpc.com/qrcode/ember.png" alt="QR Code" />
|
|
</div>
|
|
</span>
|
|
|
|
<div>
|
|
<span style="white-space: nowrap;">
|
|
<img src="https://beian.mps.gov.cn/web/assets/logo01.6189a29f.png" alt="公安标识" style="vertical-align: middle; height: 16px; display: inline-block;">
|
|
<a href="https://beian.mps.gov.cn/" target="_blank">
|
|
赣公网安备36090202000259号</a>
|
|
|
|
|
<a href="https://beian.miit.gov.cn/" target="_blank">赣ICP备2024039267号-1</a>
|
|
</span>
|
|
</div>
|
|
|
|
|
|
|
|
</footer>
|
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
|
<path d="M12 6H0l6-6z" />
|
|
</svg>
|
|
</a>
|
|
|
|
<style>
|
|
#ember-container {
|
|
position: relative;
|
|
display: inline-block;
|
|
cursor: pointer;
|
|
}
|
|
|
|
#qr-code {
|
|
position: absolute;
|
|
bottom: 100%;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
padding: 10px;
|
|
background-color: #fff;
|
|
border: 1px solid #ccc;
|
|
border-radius: 10px;
|
|
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
|
|
width: 200px;
|
|
height: 200px;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
opacity: 0;
|
|
visibility: hidden;
|
|
transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
|
|
}
|
|
|
|
#qr-code img {
|
|
max-width: 100%;
|
|
max-height: 100%;
|
|
border-radius: 10px;
|
|
}
|
|
|
|
#ember-container:hover #qr-code,
|
|
#ember-container:focus #qr-code {
|
|
opacity: 1;
|
|
visibility: visible;
|
|
}
|
|
</style>
|
|
|
|
|
|
|
|
<script>
|
|
let menu = document.getElementById('menu')
|
|
if (menu) {
|
|
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
|
|
menu.onscroll = function () {
|
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
|
}
|
|
}
|
|
|
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
|
anchor.addEventListener("click", function (e) {
|
|
e.preventDefault();
|
|
var id = this.getAttribute("href").substr(1);
|
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
|
behavior: "smooth"
|
|
});
|
|
} else {
|
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
|
}
|
|
if (id === "top") {
|
|
history.replaceState(null, null, " ");
|
|
} else {
|
|
history.pushState(null, null, `#${id}`);
|
|
}
|
|
});
|
|
});
|
|
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
var emberContainer = document.getElementById('ember-container');
|
|
emberContainer.addEventListener('mouseenter', function() {
|
|
var qrCode = document.getElementById('qr-code');
|
|
qrCode.classList.remove('hidden');
|
|
});
|
|
emberContainer.addEventListener('mouseleave', function() {
|
|
var qrCode = document.getElementById('qr-code');
|
|
qrCode.classList.add('hidden');
|
|
});
|
|
});
|
|
</script>
|
|
<script>
|
|
var mybutton = document.getElementById("top-link");
|
|
window.onscroll = function () {
|
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
|
mybutton.style.visibility = "visible";
|
|
mybutton.style.opacity = "1";
|
|
} else {
|
|
mybutton.style.visibility = "hidden";
|
|
mybutton.style.opacity = "0";
|
|
}
|
|
};
|
|
</script>
|
|
<script>
|
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
|
if (document.body.className.includes("dark")) {
|
|
document.body.classList.remove('dark');
|
|
localStorage.setItem("pref-theme", 'light');
|
|
} else {
|
|
document.body.classList.add('dark');
|
|
localStorage.setItem("pref-theme", 'dark');
|
|
}
|
|
})
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<script type="text/javascript" async
|
|
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
|
|
MathJax.Hub.Config({
|
|
tex2jax: {
|
|
inlineMath: [['$','$']],
|
|
displayMath: [['$$','$$']],
|
|
processEscapes: true,
|
|
processEnvironments: true,
|
|
skipTags: ['script', 'noscript', 'style', 'textarea', 'pre'],
|
|
TeX: { equationNumbers: { autoNumber: "AMS" },
|
|
extensions: ["AMSmath.js", "AMSsymbols.js"] }
|
|
}
|
|
});
|
|
|
|
MathJax.Hub.Queue(function() {
|
|
|
|
|
|
|
|
var all = MathJax.Hub.getAllJax(), i;
|
|
for(i = 0; i < all.length; i += 1) {
|
|
all[i].SourceElement().parentNode.className += ' has-jax';
|
|
}
|
|
});
|
|
</script>
|
|
|
|
<style>
|
|
code.has-jax {
|
|
font: inherit;
|
|
font-size: 100%;
|
|
background: inherit;
|
|
border: inherit;
|
|
color: #515151;
|
|
}
|
|
</style>
|
|
</body>
|
|
|
|
</html>
|