Compare commits
194 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
52602e91a5 | ||
![]() |
e7a4cf7171 | ||
![]() |
777979f0e3 | ||
![]() |
70e7fa534f | ||
![]() |
462aab20af | ||
![]() |
e8b69c5ab5 | ||
![]() |
4b60e7edf1 | ||
![]() |
550545fa3e | ||
![]() |
c068f676d1 | ||
![]() |
c94b230d45 | ||
![]() |
27780c6558 | ||
![]() |
f016348b97 | ||
![]() |
e2290042f7 | ||
![]() |
d085ccc832 | ||
![]() |
78e0d0505a | ||
![]() |
f3dd5b8dc5 | ||
![]() |
a8b1d66330 | ||
![]() |
b28f92b99f | ||
![]() |
1e0fe3e724 | ||
![]() |
c93d7d206b | ||
![]() |
3c2bc226ff | ||
![]() |
015a139ce0 | ||
![]() |
704d446328 | ||
![]() |
b7947467e1 | ||
![]() |
e879efa7d4 | ||
![]() |
df854f3f19 | ||
![]() |
5097e18e31 | ||
![]() |
46b187d01f | ||
![]() |
be94711dc8 | ||
![]() |
6c58920f77 | ||
![]() |
17b278f467 | ||
![]() |
1f8afa7268 | ||
![]() |
418d73caba | ||
![]() |
9c03de74f8 | ||
![]() |
1716f53864 | ||
![]() |
8cb8aba71f | ||
![]() |
802cca0f44 | ||
![]() |
75c75fff0f | ||
![]() |
40e45a539c | ||
![]() |
981320feb2 | ||
![]() |
8d23deeb40 | ||
![]() |
231c5b6cea | ||
![]() |
c12ddfb6b4 | ||
![]() |
fe10751062 | ||
![]() |
2496110d5d | ||
![]() |
d87d467dc7 | ||
![]() |
c5b0b44fed | ||
![]() |
a422495c5f | ||
![]() |
65d1345169 | ||
![]() |
b9f9e5d527 | ||
![]() |
9d2290d694 | ||
![]() |
7048a134be | ||
![]() |
12808714c1 | ||
![]() |
21914f8937 | ||
![]() |
ff83ffd53a | ||
![]() |
177b539e39 | ||
![]() |
acc8f54ef9 | ||
![]() |
db0d3b92ae | ||
![]() |
ab931acfb6 | ||
![]() |
faeb0b98fc | ||
![]() |
7adf606935 | ||
![]() |
5c9e14a585 | ||
![]() |
03eef44392 | ||
![]() |
ddda08c037 | ||
![]() |
8f46b8dd46 | ||
![]() |
82a6877681 | ||
![]() |
05eb444ccf | ||
![]() |
15adc605a2 | ||
![]() |
cee5a05de0 | ||
![]() |
fe89288f50 | ||
![]() |
7b7c793e1b | ||
![]() |
0c4a85b458 | ||
![]() |
854cebff03 | ||
![]() |
ff18b63416 | ||
![]() |
50023ea536 | ||
![]() |
47fd9d3ee8 | ||
![]() |
436b7281df | ||
![]() |
09165d971a | ||
![]() |
b5ab4ac07c | ||
![]() |
50adca44e8 | ||
![]() |
c4c040402b | ||
![]() |
d3248d2fd9 | ||
![]() |
b8ed0c1926 | ||
![]() |
65d24f05d1 | ||
![]() |
041daf4c22 | ||
![]() |
431f3732f6 | ||
![]() |
97007b05c1 | ||
![]() |
4c63155ada | ||
![]() |
d5fc31ee83 | ||
![]() |
bd2b1a903d | ||
![]() |
4b5aaa8705 | ||
![]() |
9ca1237f24 | ||
![]() |
489a55ce1f | ||
![]() |
cb5650396c | ||
![]() |
8c230537ce | ||
![]() |
a5461c39aa | ||
![]() |
3c5557654b | ||
![]() |
00a91bbb36 | ||
![]() |
6103cafb36 | ||
![]() |
5b15716092 | ||
![]() |
abcfa92d8b | ||
![]() |
e5310257ed | ||
![]() |
5090ce2e89 | ||
![]() |
021e3c0bbe | ||
![]() |
4ce5492139 | ||
![]() |
e7beed15cd | ||
![]() |
6e416bfec0 | ||
![]() |
9da5e50040 | ||
![]() |
3463084339 | ||
![]() |
8c6dc91075 | ||
![]() |
48afe35097 | ||
![]() |
0e32dd4113 | ||
![]() |
9bf33c5610 | ||
![]() |
700b53e79d | ||
![]() |
af659fe259 | ||
![]() |
a7348a1893 | ||
![]() |
311f30e4f0 | ||
![]() |
c0e460f1a8 | ||
![]() |
ed11a572c9 | ||
![]() |
b4d0e55e8f | ||
![]() |
005b7cb886 | ||
![]() |
d22c329264 | ||
![]() |
c3b0dcd6cf | ||
![]() |
e3ea1e7364 | ||
![]() |
fa99da9260 | ||
![]() |
92bcd4e73f | ||
![]() |
ec54393a93 | ||
![]() |
5eda25c75e | ||
![]() |
5e2fcd656a | ||
![]() |
0af8f0ec2e | ||
![]() |
7803016119 | ||
![]() |
d95b2708c3 | ||
![]() |
0f71818829 | ||
![]() |
966580e3d8 | ||
![]() |
3489249f61 | ||
![]() |
1eab49d8bb | ||
![]() |
cdf644caba | ||
![]() |
4b570d3f98 | ||
![]() |
2604d143e6 | ||
![]() |
ab5b3f317e | ||
![]() |
829dee9451 | ||
![]() |
eaf640bfd8 | ||
![]() |
f03616018f | ||
![]() |
ee349baa25 | ||
![]() |
9805f64da6 | ||
![]() |
9d7f369f61 | ||
![]() |
80a41ec182 | ||
![]() |
ca1b3dc00b | ||
![]() |
20e8d972e3 | ||
![]() |
34e9007870 | ||
![]() |
c306b60eab | ||
![]() |
042231c094 | ||
![]() |
9c141815f5 | ||
![]() |
d063784d73 | ||
![]() |
5f79695cef | ||
![]() |
30c55aaa29 | ||
![]() |
3d0ae1d6e1 | ||
![]() |
6f18cc9193 | ||
![]() |
43e4f32aec | ||
![]() |
cba6a1587f | ||
![]() |
2cf00823fe | ||
![]() |
48978b467f | ||
![]() |
f82aef306c | ||
![]() |
49fb4b49d5 | ||
![]() |
bd4ad30524 | ||
![]() |
dbdf84c352 | ||
![]() |
1ac1c05022 | ||
![]() |
bee5fe6465 | ||
![]() |
6a5920ce3f | ||
![]() |
0fc2ad45a4 | ||
![]() |
427c9ff678 | ||
![]() |
141fed8583 | ||
![]() |
2f5aea8d6e | ||
![]() |
96cbc413df | ||
![]() |
12bceb4c83 | ||
![]() |
b1ea5e3aba | ||
![]() |
3817e6e43d | ||
![]() |
d07179342c | ||
![]() |
1c9441e606 | ||
![]() |
1671006805 | ||
![]() |
bd9531044f | ||
![]() |
26d12e33a7 | ||
![]() |
f9cc6c73eb | ||
![]() |
5c3d5cdeb0 | ||
![]() |
9b0a355ae1 | ||
![]() |
b9a9a126e0 | ||
![]() |
9cf78b28db | ||
![]() |
3f649c4369 | ||
![]() |
35c6d60a35 | ||
![]() |
ec5f157f2a | ||
![]() |
35aebf1061 | ||
![]() |
6e6fa9d7e4 | ||
![]() |
c73da0a4ac | ||
![]() |
ec133f786b |
15
.dockerignore
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
node_modules
|
||||||
|
npm-debug.log
|
||||||
|
Dockerfile*
|
||||||
|
docker-compose*
|
||||||
|
.dockerignore
|
||||||
|
.git
|
||||||
|
.github
|
||||||
|
.gitignore
|
||||||
|
README.md
|
||||||
|
LICENSE
|
||||||
|
.vscode
|
||||||
|
dist
|
||||||
|
build
|
||||||
|
images
|
||||||
|
script
|
51
.env.example
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
# 站点信息
|
||||||
|
VITE_SITE_NAME = "無名の主页" # 名称
|
||||||
|
VITE_SITE_ANTHOR = "無名" # 作者
|
||||||
|
VITE_SITE_KEYWORDS = "無名,个人主页" # 关键词
|
||||||
|
VITE_SITE_DES = "一个默默无闻的主页" # 站点简介
|
||||||
|
VITE_SITE_URL = "imsyy.top" # 站点地址
|
||||||
|
VITE_SITE_LOGO = "/images/icon/favicon.ico" # 站点主图标
|
||||||
|
VITE_SITE_MAIN_LOGO = "/images/icon/logo.png" # 主页图标
|
||||||
|
VITE_SITE_APPLE_LOGO = "/images/logo/apple-touch-icon.png" # Apple 端图标
|
||||||
|
|
||||||
|
# 简介文本
|
||||||
|
VITE_DESC_HELLO = "Hello World !"
|
||||||
|
VITE_DESC_TEXT = "一个建立于 21 世纪的小站,存活于互联网的边缘"
|
||||||
|
VITE_DESC_HELLO_OTHER = "Oops !"
|
||||||
|
VITE_DESC_TEXT_OTHER = "哎呀,这都被你发现了( 再点击一次可关闭 )"
|
||||||
|
|
||||||
|
# 社交链接
|
||||||
|
## 请在 src/assets/socialLinks.json 文件中配置
|
||||||
|
|
||||||
|
# 网站链接
|
||||||
|
## 请在 src/assets/siteLinks.json 文件中配置
|
||||||
|
## 网站链接的图标名称可前往 https://www.xicons.org 自行挑选并在 src/components/Links/index.vue 中引入
|
||||||
|
|
||||||
|
# 天气 Key
|
||||||
|
## 请前往 高德开放平台注册 Web服务 Key
|
||||||
|
## 请注意不是 Web端 (JS API),免费申请,每日上限 5000 次
|
||||||
|
## 此处提供的服务可能会超量从而无法访问,请自行申请!请自行申请!请自行申请!
|
||||||
|
## 若此处设为空则调用 教书先生 API https://api.oioweb.cn/doc/weather/GetWeather
|
||||||
|
VITE_WEATHER_KEY = ""
|
||||||
|
|
||||||
|
# 建站日期
|
||||||
|
## 若不需要,请设为空即可
|
||||||
|
## 请按照 YYYY-MM-DD 格式填写或者仅填写年份 YYYY
|
||||||
|
VITE_SITE_START = "2020-10-24"
|
||||||
|
|
||||||
|
# ICP 备案号
|
||||||
|
## 若不需要,请设为空即可
|
||||||
|
VITE_SITE_ICP = "豫ICP备2022018134号-1"
|
||||||
|
|
||||||
|
# 歌曲 API 地址
|
||||||
|
## 请参照 https://github.com/xizeyoupan/Meting-API#deno-deploy 进行 API 服务部署
|
||||||
|
## 此处提供的服务可能会超量从而无法访问,请自行部署
|
||||||
|
## 若使用 QQ 音乐歌单,歌曲数量最好不要超出 50 首
|
||||||
|
## 备用:https://api.wuenci.com/meting/api/
|
||||||
|
VITE_SONG_API = "https://api-meting.imsyy.top/api"
|
||||||
|
# 歌曲服务器 ( netease-网易云, tencent-qq音乐 )
|
||||||
|
VITE_SONG_SERVER = "netease"
|
||||||
|
# 播放类型 ( song-歌曲, playlist-播放列表, album-专辑, search-搜索, artist-艺术家 )
|
||||||
|
VITE_SONG_TYPE = "playlist"
|
||||||
|
# 播放 ID ( 若无需播放器,请设为空即可 )
|
||||||
|
VITE_SONG_ID = "9379831714"
|
3
.eslintignore
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
node_modules
|
||||||
|
dist
|
||||||
|
.gitignore
|
35
.eslintrc.json
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"env": {
|
||||||
|
"browser": true,
|
||||||
|
"es2021": true
|
||||||
|
},
|
||||||
|
"extends": ["eslint:recommended", "plugin:vue/vue3-essential"],
|
||||||
|
"parserOptions": {
|
||||||
|
"ecmaVersion": "latest",
|
||||||
|
"sourceType": "module"
|
||||||
|
},
|
||||||
|
"plugins": ["vue"],
|
||||||
|
"rules": {
|
||||||
|
"vue/multi-word-component-names": "off"
|
||||||
|
},
|
||||||
|
"globals": {
|
||||||
|
"defineProps": true,
|
||||||
|
"defineEmits": true,
|
||||||
|
"withDefaults": true,
|
||||||
|
"h": true,
|
||||||
|
"vue": true,
|
||||||
|
"ref": true,
|
||||||
|
"reactive": true,
|
||||||
|
"computed": true,
|
||||||
|
"watch": true,
|
||||||
|
"provide": true,
|
||||||
|
"inject": true,
|
||||||
|
"defineComponent": true,
|
||||||
|
"onBeforeMount": true,
|
||||||
|
"onMounted": true,
|
||||||
|
"onBeforeUnmount": true,
|
||||||
|
"nextTick": true,
|
||||||
|
"ElMessage": true,
|
||||||
|
"$openList": true
|
||||||
|
}
|
||||||
|
}
|
22
.github/ISSUE_TEMPLATE/bug-en.yml
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
name: Encountering an Issue
|
||||||
|
description: Please provide details about the issue you are encountering
|
||||||
|
labels: [bug]
|
||||||
|
body:
|
||||||
|
- type: input
|
||||||
|
id: site-url
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
attributes:
|
||||||
|
label: "Site URL"
|
||||||
|
placeholder: "Please provide the URL of the site where the issue occurred"
|
||||||
|
- type: input
|
||||||
|
id: problem
|
||||||
|
attributes:
|
||||||
|
label: "Description of the Issue"
|
||||||
|
description: "Include any error messages or screenshots if applicable"
|
||||||
|
placeholder: "Please describe the issue you are encountering"
|
||||||
|
- type: textarea
|
||||||
|
id: other
|
||||||
|
attributes:
|
||||||
|
label: "Additional Information"
|
||||||
|
description: "Is there anything else you would like to add?"
|
22
.github/ISSUE_TEMPLATE/bug.yml
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
name: 遇到问题
|
||||||
|
description: 请填写遇到的问题的详细信息
|
||||||
|
labels: [bug]
|
||||||
|
body:
|
||||||
|
- type: input
|
||||||
|
id: site-url
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
attributes:
|
||||||
|
label: "站点链接"
|
||||||
|
placeholder: "请填写你的站点链接"
|
||||||
|
- type: input
|
||||||
|
id: problem
|
||||||
|
attributes:
|
||||||
|
label: "问题描述"
|
||||||
|
description: "有错误的话请提供报错截图"
|
||||||
|
placeholder: "请详细描述一下遇到的问题"
|
||||||
|
- type: textarea
|
||||||
|
id: other
|
||||||
|
attributes:
|
||||||
|
label: "补充信息"
|
||||||
|
description: "还需要说些什么吗"
|
14
.github/ISSUE_TEMPLATE/other-en.yml
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
name: Other Information
|
||||||
|
description: Any other issues or questions related to usage
|
||||||
|
labels: [other]
|
||||||
|
body:
|
||||||
|
- type: textarea
|
||||||
|
id: title
|
||||||
|
attributes:
|
||||||
|
label: "Description of the Issue"
|
||||||
|
description: "Please provide a clear description of the issue you are experiencing"
|
||||||
|
- type: textarea
|
||||||
|
id: other
|
||||||
|
attributes:
|
||||||
|
label: "Additional Information"
|
||||||
|
description: "Is there any other information you would like to add?"
|
14
.github/ISSUE_TEMPLATE/other.yml
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
name: 其他信息
|
||||||
|
description: 关于使用上的问题
|
||||||
|
labels: [other]
|
||||||
|
body:
|
||||||
|
- type: textarea
|
||||||
|
id: title
|
||||||
|
attributes:
|
||||||
|
label: "问题描述"
|
||||||
|
description: "请尽量清晰的描述您遇到的问题"
|
||||||
|
- type: textarea
|
||||||
|
id: other
|
||||||
|
attributes:
|
||||||
|
label: "补充信息"
|
||||||
|
description: "有需要补充的信息吗"
|
46
.github/workflows/build.yml
vendored
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
# Dev 分支推送部署预览
|
||||||
|
## 仅部署 Win 端
|
||||||
|
name: Build Dev
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- dev
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
release:
|
||||||
|
name: Build Website
|
||||||
|
runs-on: windows-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
# 检出 Git 仓库
|
||||||
|
- name: Check out git repository
|
||||||
|
uses: actions/checkout@v4.1.1
|
||||||
|
# 安装 Node.js
|
||||||
|
- name: Install Node.js
|
||||||
|
uses: actions/setup-node@v4.0.0
|
||||||
|
with:
|
||||||
|
node-version: "18.x"
|
||||||
|
# 复制环境变量文件
|
||||||
|
- name: Copy .env.example
|
||||||
|
run: |
|
||||||
|
if (-not (Test-Path .env)) {
|
||||||
|
Copy-Item .env.example .env
|
||||||
|
} else {
|
||||||
|
Write-Host ".env file already exists. Skipping the copy step."
|
||||||
|
}
|
||||||
|
# 安装项目依赖
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: npm install
|
||||||
|
# 构建程序
|
||||||
|
- name: Build Website
|
||||||
|
run: npm run build
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.ACCESS_TOKEN }}
|
||||||
|
# 上传构建产物
|
||||||
|
- name: Upload artifacts
|
||||||
|
uses: actions/upload-artifact@v3.1.3
|
||||||
|
with:
|
||||||
|
name: Home
|
||||||
|
path: dist
|
25
.gitignore
vendored
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
pnpm-debug.log*
|
||||||
|
lerna-debug.log*
|
||||||
|
|
||||||
|
node_modules
|
||||||
|
dist
|
||||||
|
dist-ssr
|
||||||
|
*.local
|
||||||
|
.env
|
||||||
|
|
||||||
|
# Editor directories and files
|
||||||
|
.vscode/*
|
||||||
|
!.vscode/extensions.json
|
||||||
|
.idea
|
||||||
|
.DS_Store
|
||||||
|
*.suo
|
||||||
|
*.ntvs*
|
||||||
|
*.njsproj
|
||||||
|
*.sln
|
||||||
|
*.sw?
|
17
.hintrc
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"extends": [
|
||||||
|
"development"
|
||||||
|
],
|
||||||
|
"hints": {
|
||||||
|
"compat-api/html": "off",
|
||||||
|
"no-protocol-relative-urls": "off",
|
||||||
|
"compat-api/css": [
|
||||||
|
"default",
|
||||||
|
{
|
||||||
|
"ignore": [
|
||||||
|
"backdrop-filter"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
8
.prettierrc.json
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://json.schemastore.org/prettierrc",
|
||||||
|
"singleQuote": false,
|
||||||
|
"trailingComma": "all",
|
||||||
|
"tabWidth": 2,
|
||||||
|
"semi": true,
|
||||||
|
"printWidth": 100
|
||||||
|
}
|
3
.vscode/extensions.json
vendored
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"recommendations": ["Vue.volar"]
|
||||||
|
}
|
3
.vscode/settings.json
vendored
@ -1,3 +0,0 @@
|
|||||||
{
|
|
||||||
"liveServer.settings.port": 5501
|
|
||||||
}
|
|
128
CODE_OF_CONDUCT.md
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
# Contributor Covenant Code of Conduct
|
||||||
|
|
||||||
|
## Our Pledge
|
||||||
|
|
||||||
|
We as members, contributors, and leaders pledge to make participation in our
|
||||||
|
community a harassment-free experience for everyone, regardless of age, body
|
||||||
|
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||||
|
identity and expression, level of experience, education, socio-economic status,
|
||||||
|
nationality, personal appearance, race, religion, or sexual identity
|
||||||
|
and orientation.
|
||||||
|
|
||||||
|
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||||
|
diverse, inclusive, and healthy community.
|
||||||
|
|
||||||
|
## Our Standards
|
||||||
|
|
||||||
|
Examples of behavior that contributes to a positive environment for our
|
||||||
|
community include:
|
||||||
|
|
||||||
|
* Demonstrating empathy and kindness toward other people
|
||||||
|
* Being respectful of differing opinions, viewpoints, and experiences
|
||||||
|
* Giving and gracefully accepting constructive feedback
|
||||||
|
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||||
|
and learning from the experience
|
||||||
|
* Focusing on what is best not just for us as individuals, but for the
|
||||||
|
overall community
|
||||||
|
|
||||||
|
Examples of unacceptable behavior include:
|
||||||
|
|
||||||
|
* The use of sexualized language or imagery, and sexual attention or
|
||||||
|
advances of any kind
|
||||||
|
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||||
|
* Public or private harassment
|
||||||
|
* Publishing others' private information, such as a physical or email
|
||||||
|
address, without their explicit permission
|
||||||
|
* Other conduct which could reasonably be considered inappropriate in a
|
||||||
|
professional setting
|
||||||
|
|
||||||
|
## Enforcement Responsibilities
|
||||||
|
|
||||||
|
Community leaders are responsible for clarifying and enforcing our standards of
|
||||||
|
acceptable behavior and will take appropriate and fair corrective action in
|
||||||
|
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||||
|
or harmful.
|
||||||
|
|
||||||
|
Community leaders have the right and responsibility to remove, edit, or reject
|
||||||
|
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||||
|
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||||
|
decisions when appropriate.
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
This Code of Conduct applies within all community spaces, and also applies when
|
||||||
|
an individual is officially representing the community in public spaces.
|
||||||
|
Examples of representing our community include using an official e-mail address,
|
||||||
|
posting via an official social media account, or acting as an appointed
|
||||||
|
representative at an online or offline event.
|
||||||
|
|
||||||
|
## Enforcement
|
||||||
|
|
||||||
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||||
|
reported to the community leaders responsible for enforcement at
|
||||||
|
one@imsyy.top.
|
||||||
|
All complaints will be reviewed and investigated promptly and fairly.
|
||||||
|
|
||||||
|
All community leaders are obligated to respect the privacy and security of the
|
||||||
|
reporter of any incident.
|
||||||
|
|
||||||
|
## Enforcement Guidelines
|
||||||
|
|
||||||
|
Community leaders will follow these Community Impact Guidelines in determining
|
||||||
|
the consequences for any action they deem in violation of this Code of Conduct:
|
||||||
|
|
||||||
|
### 1. Correction
|
||||||
|
|
||||||
|
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||||
|
unprofessional or unwelcome in the community.
|
||||||
|
|
||||||
|
**Consequence**: A private, written warning from community leaders, providing
|
||||||
|
clarity around the nature of the violation and an explanation of why the
|
||||||
|
behavior was inappropriate. A public apology may be requested.
|
||||||
|
|
||||||
|
### 2. Warning
|
||||||
|
|
||||||
|
**Community Impact**: A violation through a single incident or series
|
||||||
|
of actions.
|
||||||
|
|
||||||
|
**Consequence**: A warning with consequences for continued behavior. No
|
||||||
|
interaction with the people involved, including unsolicited interaction with
|
||||||
|
those enforcing the Code of Conduct, for a specified period of time. This
|
||||||
|
includes avoiding interactions in community spaces as well as external channels
|
||||||
|
like social media. Violating these terms may lead to a temporary or
|
||||||
|
permanent ban.
|
||||||
|
|
||||||
|
### 3. Temporary Ban
|
||||||
|
|
||||||
|
**Community Impact**: A serious violation of community standards, including
|
||||||
|
sustained inappropriate behavior.
|
||||||
|
|
||||||
|
**Consequence**: A temporary ban from any sort of interaction or public
|
||||||
|
communication with the community for a specified period of time. No public or
|
||||||
|
private interaction with the people involved, including unsolicited interaction
|
||||||
|
with those enforcing the Code of Conduct, is allowed during this period.
|
||||||
|
Violating these terms may lead to a permanent ban.
|
||||||
|
|
||||||
|
### 4. Permanent Ban
|
||||||
|
|
||||||
|
**Community Impact**: Demonstrating a pattern of violation of community
|
||||||
|
standards, including sustained inappropriate behavior, harassment of an
|
||||||
|
individual, or aggression toward or disparagement of classes of individuals.
|
||||||
|
|
||||||
|
**Consequence**: A permanent ban from any sort of public interaction within
|
||||||
|
the community.
|
||||||
|
|
||||||
|
## Attribution
|
||||||
|
|
||||||
|
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||||
|
version 2.0, available at
|
||||||
|
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
|
||||||
|
|
||||||
|
Community Impact Guidelines were inspired by [Mozilla's code of conduct
|
||||||
|
enforcement ladder](https://github.com/mozilla/diversity).
|
||||||
|
|
||||||
|
[homepage]: https://www.contributor-covenant.org
|
||||||
|
|
||||||
|
For answers to common questions about this code of conduct, see the FAQ at
|
||||||
|
https://www.contributor-covenant.org/faq. Translations are available at
|
||||||
|
https://www.contributor-covenant.org/translations.
|
17
Dockerfile
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
# 构建应用
|
||||||
|
FROM node:18 AS builder
|
||||||
|
WORKDIR /app
|
||||||
|
COPY package*.json ./
|
||||||
|
RUN npm install
|
||||||
|
COPY . .
|
||||||
|
RUN [ ! -e ".env" ] && cp .env.example .env || true
|
||||||
|
RUN npm run build
|
||||||
|
|
||||||
|
# 最小化镜像
|
||||||
|
FROM node:18-alpine
|
||||||
|
WORKDIR /app
|
||||||
|
COPY --from=builder /app/dist ./dist
|
||||||
|
RUN npm install -g http-server
|
||||||
|
|
||||||
|
EXPOSE 12445
|
||||||
|
CMD ["http-server", "dist", "-p", "12445"]
|
21
LICENSE
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2022 imsyy
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
244
README.md
@ -1,34 +1,244 @@
|
|||||||
|
简体中文 | [English](./README_EN.md)
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<strong><h2>無名の主页</h2></strong>
|
<strong><h2>無名の主页</h2></strong>
|
||||||
简单的小主页,原来的看够了,重新弄一个
|
简单的小主页,原来的看够了,重新弄了一个
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
>主页的名称字体已经过压缩,若用名称以外的字母会变回默认字体,这里是 [完整字体](https://cdn.jsdelivr.net/gh/imsyy/file/font/Pacifico-Regular.ttf)
|

|
||||||
|
|
||||||
### 功能
|
> 主页的 Logo 字体已经过压缩,若用本站 Logo 以外的字母会变回默认字体,这里是 [完整字体](https://file.imsyy.top/font/Other/Pacifico-Regular.ttf),若无法下载,可将字体目录下的 `Pacifico-Regular-all.ttf` 进行替换
|
||||||
|
|
||||||
|
### 👀 Demo
|
||||||
|
|
||||||
|
> 由于 CDN 缓存原因,查看最新效果可能需要 `Ctrl` + `F5` 强制刷新浏览器缓存
|
||||||
|
|
||||||
|
- [無名の主页](https://www.imsyy.top)
|
||||||
|
- [無名の主页 - Dev](https://home-imsyy.vercel.app)
|
||||||
|
- [無名の主页 - 备用线路](https://home-5iw.pages.dev)
|
||||||
|
|
||||||
|
### 🎉 功能
|
||||||
|
|
||||||
|
- [x] 载入动画
|
||||||
- [x] 站点简介
|
- [x] 站点简介
|
||||||
- [x] Hitokoto 一言
|
- [x] Hitokoto 一言
|
||||||
- [x] 日期及时间
|
- [x] 日期及时间
|
||||||
- [x] 天气信息
|
- [x] 实时天气
|
||||||
- [x] 时光进度条
|
- [x] 时光进度条
|
||||||
- [x] 音乐插件
|
- [x] 音乐播放器
|
||||||
|
- [x] 移动端适配
|
||||||
|
|
||||||
* [ ] 没想好
|
### ⚙️ 自动部署
|
||||||
|
|
||||||
### 插件
|
如果遇到构建环境或者打包过程出现错误,则可以采用 `Github Actions` 来进行自动构建
|
||||||
|
|
||||||
* [Bootstrap](https://getbootstrap.com/)
|
- 在成功 `fork` 仓库后,前往 `Actions` 页面,若您是首次开启,则会出现下面的提示,点击开启
|
||||||
* [iziToast](https://izitoast.marcelodolza.com/)
|
|
||||||
* [Iconfont](https://www.iconfont.cn/)
|

|
||||||
* [Font Awesome](https://fontawesome.com/)
|
|
||||||
* [jQuery](https://jquery.com/)
|
- 然后在仓库中进行任意修改后均会触发工作流的运行,在工作流完成后,会在下方生成一个可供下载的压缩包,这就是构建出的静态文件,可自行上传至服务器
|
||||||
* [Aplayer](https://aplayer.js.org/)
|
|
||||||
|

|
||||||
|
|
||||||
|
### ⚙️ 手动部署
|
||||||
|
|
||||||
|
- **安装** [node.js](https://nodejs.org/zh-cn/) **环境**
|
||||||
|
|
||||||
|
> node > 16.16.0
|
||||||
|
> npm > 8.15.0
|
||||||
|
|
||||||
|
- 然后以 **管理员权限** 运行 `cmd` 终端,并 `cd` 到 项目根目录
|
||||||
|
- 在 `终端` 中输入:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 安装 pnpm
|
||||||
|
npm install -g pnpm
|
||||||
|
|
||||||
|
# 安装依赖
|
||||||
|
pnpm install
|
||||||
|
|
||||||
|
# 预览
|
||||||
|
pnpm dev
|
||||||
|
|
||||||
|
# 构建
|
||||||
|
pnpm build
|
||||||
|
```
|
||||||
|
|
||||||
|
> 构建完成后,静态资源会在 **`dist` 目录** 中生成,可将 **`dist` 文件夹下的文件**上传至服务器,也可使用 `Vercel` 等托管平台一键导入并自动部署
|
||||||
|
|
||||||
|
### ⚙️ Docker 部署
|
||||||
|
|
||||||
|
> 安装及配置 Docker 将不在此处说明,请自行解决
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 构建
|
||||||
|
docker build -t home .
|
||||||
|
# 运行
|
||||||
|
docker run -p 12445:12445 -d home
|
||||||
|
```
|
||||||
|
|
||||||
|
### ⚙️ Vercel 部署
|
||||||
|
|
||||||
|
> 其他部署平台大致相同,在此不做说明
|
||||||
|
|
||||||
|
1. 点击本仓库右上角的 `Fork`,复制本仓库到你的 `GitHub` 账号
|
||||||
|
2. 复制 `/.env.example` 文件并重命名为 `/.env`( 重要 )
|
||||||
|
3. 按需修改 `/.env` 文件中的配置
|
||||||
|
4. 点击 `Deploy`,即可成功部署
|
||||||
|
|
||||||
|
### 网站链接
|
||||||
|
|
||||||
|
在 `src/assets/siteLinks.json` 中可以自定义网站链接(以指向自己的网站):
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"icon": "Blog",
|
||||||
|
"name": "博客",
|
||||||
|
"link": "https://blog.imsyy.top/"
|
||||||
|
},
|
||||||
|
```
|
||||||
|
|
||||||
|
其中 `icon` 网站链接的图标可以在 `src/components/Links/index.vue` 中添加:
|
||||||
|
|
||||||
|
```js
|
||||||
|
// 可前往 https://www.xicons.org 自行挑选并在此处引入
|
||||||
|
// 此处引入的是 fa 类型
|
||||||
|
import {
|
||||||
|
Link,
|
||||||
|
Blog,
|
||||||
|
CompactDisc,
|
||||||
|
Cloud,
|
||||||
|
Compass,
|
||||||
|
Book,
|
||||||
|
Fire,
|
||||||
|
LaptopCode,
|
||||||
|
} from "@vicons/fa";
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
// 网站链接图标
|
||||||
|
const siteIcon = {
|
||||||
|
Blog,
|
||||||
|
Cloud,
|
||||||
|
CompactDisc,
|
||||||
|
Compass,
|
||||||
|
Book,
|
||||||
|
Fire,
|
||||||
|
LaptopCode,
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
### 社交链接
|
||||||
|
|
||||||
|
在 `src/assets/socialLinks.json` 中可以自定义社交链接。
|
||||||
|
|
||||||
|
### 天气
|
||||||
|
|
||||||
|
天气及地区获取需要 `高德开放平台` 相关 API
|
||||||
|
|
||||||
|
- 前往 [高德开放平台控制台](https://console.amap.com/dev/index) 创建一个 `Web 服务` 类型的 `Key`,并将 `Key` 填入 `.env` 中的 `VITE_WEATHER_KEY` 中
|
||||||
|
|
||||||
|
也可自行更换其他方式
|
||||||
|
|
||||||
|
### 音乐
|
||||||
|
|
||||||
|
> 本项目采用了基于 `MetingJS` 的 `Aplayer` 音乐播放器,可实现快速自定义歌单
|
||||||
|
> \*仅支持 **中国大陆地区**
|
||||||
|
|
||||||
|
请在 `.env` 文件中更改歌曲相关参数即可实现自定义歌单列表
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 歌曲 API 地址
|
||||||
|
VITE_SONG_API = "https://api-meting.imsyy.top"
|
||||||
|
# 歌曲服务器 ( netease-网易云, tencent-qq音乐 )
|
||||||
|
VITE_SONG_SERVER = "netease"
|
||||||
|
# 播放类型 ( song-歌曲, playlist-播放列表, album-专辑, search-搜索, artist-艺术家 )
|
||||||
|
VITE_SONG_TYPE = "playlist"
|
||||||
|
# 播放 ID
|
||||||
|
VITE_SONG_ID = "7452421335"
|
||||||
|
```
|
||||||
|
|
||||||
|
### 字体
|
||||||
|
|
||||||
|
现采用 `HarmonyOS Sans` 开源字体,采用字体拆分,提升加载速度
|
||||||
|
|
||||||
|
> 由于本站 `CDN` 已开启防盗链,**非本站域名不可访问**,请将字体引入链接更改为下方内容,否则 **自定义字体将失效**
|
||||||
|
>
|
||||||
|
> `https://s1.hdslb.com/bfs/static/jinkela/long/font/regular.css`
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>旧版方式</summary>
|
||||||
|
|
||||||
|
> 由于本项目引入了中文字体,需要压缩中文字体以提高网页加载速度( 也可以取消使用中文字体 )
|
||||||
|
|
||||||
|
#### 中文字体去除繁体
|
||||||
|
|
||||||
|
- 安装 `Python 3.7` 和 `pip`
|
||||||
|
- 运行 `pip install fonttools`
|
||||||
|
- 下载 [sc_unicode.txt](https://gist.githubusercontent.com/imaegoo/d64e5088b723c2e02c40985f55ff12db/raw/5ebd2ce49418c73459a9dfe050483409306a6c1d/sc_unicode.txt)
|
||||||
|
- 运行 `pyftsubset 字体名称.ttf --unicodes-file=sc_unicode.txt`
|
||||||
|
|
||||||
|
#### 字体进一步压缩
|
||||||
|
|
||||||
|
- 编译安装 `Google woff2`
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo apt-get install -y git g++ make
|
||||||
|
git clone --recursive https://github.com/google/woff2.git
|
||||||
|
cd woff2
|
||||||
|
make clean all
|
||||||
|
```
|
||||||
|
|
||||||
|
- 再压缩字体
|
||||||
|
|
||||||
|
```
|
||||||
|
./woff2_compress ./字体名称.ttf
|
||||||
|
```
|
||||||
|
|
||||||
|
- 最终可对原字体进行缓加载,**先行加载压缩后的字体**
|
||||||
|
|
||||||
|
> 详细信息可前往 [虹墨空间站](https://www.imaegoo.com/2020/chinese-font-compress/) 查看原文
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
### 网站图标及网站背景
|
||||||
|
|
||||||
|
#### 网站背景
|
||||||
|
|
||||||
|
可以在 `public/images` 中修改网站背景
|
||||||
|
|
||||||
|
如果想要添加更多的本地图片作为网站背景,可以将图片重命名 `background+数字` 的形式,并在 `src/components/Background/index.vue` 中进行修改:
|
||||||
|
|
||||||
|
```js
|
||||||
|
if (type == 0) {
|
||||||
|
// 修改此处 Math.random() 后面的第一个数字为图片的数量
|
||||||
|
bgUrl.value = `/images/background${Math.floor(Math.random() * 10 + 1)}.webp`;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 网站图标
|
||||||
|
|
||||||
|
可以在 `public/images/icon` 中修改网站图标。
|
||||||
|
|
||||||
|
### 技术栈
|
||||||
|
|
||||||
|
- [Vue](https://cn.vuejs.org/)
|
||||||
|
- [Vite](https://vitejs.cn/vite3-cn/)
|
||||||
|
- [Pinia](https://pinia.vuejs.org/zh/)
|
||||||
|
- [IconPark](https://iconpark.oceanengine.com/official)
|
||||||
|
- [xicons](https://xicons.org/)
|
||||||
|
- [Aplayer](https://aplayer.js.org/)
|
||||||
|
|
||||||
### API
|
### API
|
||||||
|
|
||||||
* [JsonBird](https://bird.ioliu.cn/)
|
- [韩小韩 WebAPI 接口](https://api.vvhan.com/)
|
||||||
* [天气 API](https://www.tianqiapi.com/)
|
- [搏天 API](https://api.btstu.cn/doc/sjbz.php)
|
||||||
* [Hitokoto - 一言](https://hitokoto.cn/)
|
- [教书先生 API](https://api.oioweb.cn/doc/weather/GetWeather)
|
||||||
|
- [高德开放平台](https://lbs.amap.com/)
|
||||||
|
- [Hitokoto 一言](https://hitokoto.cn/)
|
||||||
|
|
||||||
<a title="SSL" target="_blank" href="https://myssl.com/seal/detail?domain=blog.imsyy.top"><img src="https://img.shields.io/badge/MySSL-安全认证-brightgreen"></a> <a title="CDN" target="_blank" href="https://cdnjs.com/"><img src="https://img.shields.io/badge/CDN-Cloudflare-blue"></a> <a title="Copyright" target="_blank" href="https://imsyy.top/"><img src="https://img.shields.io/badge/Copyright%20%C2%A9%202020--2022-%E7%84%A1%E5%90%8D-red"></a>
|
## Star History
|
||||||
|
|
||||||
|
[](https://star-history.com/#imsyy/home&Date)
|
||||||
|
|
||||||
|
<a title="SSL" target="_blank" href="https://myssl.com/seal/detail?domain=blog.imsyy.top"><img src="https://img.shields.io/badge/MySSL-安全认证-brightgreen"></a> <a title="CDN" target="_blank" href="https://cdnjs.com/"><img src="https://img.shields.io/badge/CDN-Cloudflare-blue"></a> <a title="Copyright" target="_blank" href="https://imsyy.top/"><img src="https://img.shields.io/badge/Copyright%20%C2%A9%202020--2023-%E7%84%A1%E5%90%8D-red"></a>
|
||||||
|
144
README_EN.md
Normal file
@ -0,0 +1,144 @@
|
|||||||
|
English | [Chinese](./README.md)
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<strong><h2>無名の主页</h2></strong>
|
||||||
|
Simple little homepage, had enough of the original one and made a new one
|
||||||
|
</p>
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
>The logo font on the home page has been compressed, so if you use a font other than this logo, it will change back to the default font, Here is the [full font](https://file.4everland.app/font/Other/Pacifico-Regular.ttf)
|
||||||
|
|
||||||
|
### Demo
|
||||||
|
|
||||||
|
>Due to CDN caching, you may need `Ctrl` + `F5` to force a browser cache refresh to see the latest results
|
||||||
|
|
||||||
|
- [無名の主页](https://www.imsyy.top)
|
||||||
|
- [無名の主页 - Dev](https://home-imsyy.vercel.app)
|
||||||
|
- [無名の主页 - Standby](https://home-5iw.pages.dev)
|
||||||
|
|
||||||
|
### Functions
|
||||||
|
|
||||||
|
- [x] Loading animation
|
||||||
|
- [x] Site description
|
||||||
|
- [x] Hitokoto
|
||||||
|
- [x] Date and time
|
||||||
|
- [x] Live weather
|
||||||
|
- [x] Time progress bar
|
||||||
|
- [x] Music player
|
||||||
|
- [x] Mobile adaptation
|
||||||
|
|
||||||
|
* [ ] Player cancels using Aplayer
|
||||||
|
|
||||||
|
### Deployment
|
||||||
|
|
||||||
|
* **Installation** [node.js](https://nodejs.org/zh-cn/) **Environment**
|
||||||
|
|
||||||
|
> node > 16.16.0
|
||||||
|
> npm > 8.15.0
|
||||||
|
|
||||||
|
* Then run the `cmd` terminal with **administrator privileges** and `cd` to the project root directory
|
||||||
|
* In the `terminal` type:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Install pnpm
|
||||||
|
npm install -g pnpm
|
||||||
|
|
||||||
|
# Install the dependencies
|
||||||
|
pnpm install
|
||||||
|
|
||||||
|
# Preview
|
||||||
|
pnpm dev
|
||||||
|
|
||||||
|
# Build
|
||||||
|
pnpm build
|
||||||
|
```
|
||||||
|
|
||||||
|
> Once the build is complete, the files in the `dist` folder can be uploaded to the server or imported and automatically deployed with one click using a hosting platform such as `Vercel`.
|
||||||
|
|
||||||
|
### Weather
|
||||||
|
|
||||||
|
Weather and area access requires `高德开放平台` related API
|
||||||
|
|
||||||
|
- Go to [高德开放平台控制台](https://console.amap.com/dev/index) to create a `Key` of type `Web Service` and fill the `Key` into `VITE_WEATHER_KEY` in `.env`
|
||||||
|
|
||||||
|
It can also be replaced by other methods
|
||||||
|
|
||||||
|
### Music
|
||||||
|
|
||||||
|
>This project uses the `Aplayer` music player based on `MetingJS` for quick song list customization
|
||||||
|
>*Only supported in **Mainland China**
|
||||||
|
|
||||||
|
Please change the song related parameters in the `.env` file to customize the song list
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Songs API address
|
||||||
|
VITE_SONG_API = "https://api-meting.imsyy.top"
|
||||||
|
# Song server ( netease-netease, tencent-qq music )
|
||||||
|
VITE_SONG_SERVER = "netease"
|
||||||
|
# Playback type ( song-song, playlist-playlist, album-album, search-search, artist-artist )
|
||||||
|
VITE_SONG_TYPE = "playlist"
|
||||||
|
# Playback ID
|
||||||
|
VITE_SONG_ID = "7452421335"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Fonts
|
||||||
|
|
||||||
|
Now using `HarmonyOS Sans` open source font, using font splitting to improve loading speed
|
||||||
|
|
||||||
|
>Because this site's `CDN` has opened anti-leech, **non-site domain name is not accessible**, please change the font import link to the following content, otherwise **custom fonts will be invalid**
|
||||||
|
>
|
||||||
|
>`https://cdn.jsdelivr.net/gh/imsyy/file/font/HarmonyOS_Sans/regular.min.css`
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>old way</summary>
|
||||||
|
|
||||||
|
>As Chinese fonts are introduced in this project, Chinese fonts need to be compressed to improve the loading speed of the page (you can also cancel the use of Chinese fonts)
|
||||||
|
|
||||||
|
#### Chinese font removal traditional
|
||||||
|
|
||||||
|
- Install `Python 3.7` and `pip`
|
||||||
|
- Run `pip install fonttools`
|
||||||
|
- Download [sc_unicode.txt](https://gist.githubusercontent.com/imaegoo/d64e5088b723c2e02c40985f55ff12db/raw/5ebd2ce49418c73459a9dfe050483409306a6c1d/sc_unicode.txt)
|
||||||
|
- Run `pyftsubset font-name.ttf --unicodes-file=sc_unicode.txt`
|
||||||
|
|
||||||
|
#### fonts further compressed
|
||||||
|
|
||||||
|
- Compile and install ``Google woff2``
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo apt-get install -y git g++ make
|
||||||
|
git clone --recursive https://github.com/google/woff2.git
|
||||||
|
cd woff2
|
||||||
|
make clean all
|
||||||
|
```
|
||||||
|
|
||||||
|
- Compress the font again
|
||||||
|
|
||||||
|
```
|
||||||
|
. /woff2_compress . /font_name.ttf
|
||||||
|
```
|
||||||
|
|
||||||
|
- Eventually the original font can be slow loaded, **load the compressed font first**
|
||||||
|
|
||||||
|
>For more information, please go to [虹墨空间站](https://www.imaegoo.com/2020/chinese-font-compress/) to view the original article
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
### Technology Stack
|
||||||
|
|
||||||
|
* [Vue](https://cn.vuejs.org/)
|
||||||
|
* [Vite](https://vitejs.cn/vite3-cn/)
|
||||||
|
* [Pinia](https://pinia.vuejs.org/zh/)
|
||||||
|
* [IconPark](https://iconpark.oceanengine.com/official)
|
||||||
|
* [xicons](https://xicons.org/)
|
||||||
|
* [Aplayer](https://aplayer.js.org/)
|
||||||
|
|
||||||
|
### API
|
||||||
|
|
||||||
|
* [韩小韩 WebAPI 接口](https://api.vvhan.com/)
|
||||||
|
* [搏天 API](https://api.btstu.cn/doc/sjbz.php)
|
||||||
|
* [高德开放平台](https://lbs.amap.com/)
|
||||||
|
* [Hitokoto 一言](https://hitokoto.cn/)
|
||||||
|
|
||||||
|
<a title="SSL" target="_blank" href="https://myssl.com/seal/detail?domain=blog.imsyy.top"><img src="https://img.shields.io/badge/MySSL-安全认证-brightgreen"></a> <a title="CDN" target="_blank" href="https://cdnjs.com/"><img src="https://img.shields.io/badge/CDN-Cloudflare-blue"></a> <a title="Copyright" target="_blank" href="https://imsyy.top/"><img src="https://img.shields.io/badge/Copyright%20%C2%A9%202020--2023-%E7%84%A1%E5%90%8D-red"></a>
|
57
auto-imports.d.ts
vendored
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
// Generated by 'unplugin-auto-import'
|
||||||
|
export {}
|
||||||
|
declare global {
|
||||||
|
const EffectScope: typeof import('vue')['EffectScope']
|
||||||
|
const ElMessage: typeof import('element-plus/es')['ElMessage']
|
||||||
|
const computed: typeof import('vue')['computed']
|
||||||
|
const createApp: typeof import('vue')['createApp']
|
||||||
|
const customRef: typeof import('vue')['customRef']
|
||||||
|
const defineAsyncComponent: typeof import('vue')['defineAsyncComponent']
|
||||||
|
const defineComponent: typeof import('vue')['defineComponent']
|
||||||
|
const effectScope: typeof import('vue')['effectScope']
|
||||||
|
const getCurrentInstance: typeof import('vue')['getCurrentInstance']
|
||||||
|
const getCurrentScope: typeof import('vue')['getCurrentScope']
|
||||||
|
const h: typeof import('vue')['h']
|
||||||
|
const inject: typeof import('vue')['inject']
|
||||||
|
const isProxy: typeof import('vue')['isProxy']
|
||||||
|
const isReactive: typeof import('vue')['isReactive']
|
||||||
|
const isReadonly: typeof import('vue')['isReadonly']
|
||||||
|
const isRef: typeof import('vue')['isRef']
|
||||||
|
const markRaw: typeof import('vue')['markRaw']
|
||||||
|
const nextTick: typeof import('vue')['nextTick']
|
||||||
|
const onActivated: typeof import('vue')['onActivated']
|
||||||
|
const onBeforeMount: typeof import('vue')['onBeforeMount']
|
||||||
|
const onBeforeUnmount: typeof import('vue')['onBeforeUnmount']
|
||||||
|
const onBeforeUpdate: typeof import('vue')['onBeforeUpdate']
|
||||||
|
const onDeactivated: typeof import('vue')['onDeactivated']
|
||||||
|
const onErrorCaptured: typeof import('vue')['onErrorCaptured']
|
||||||
|
const onMounted: typeof import('vue')['onMounted']
|
||||||
|
const onRenderTracked: typeof import('vue')['onRenderTracked']
|
||||||
|
const onRenderTriggered: typeof import('vue')['onRenderTriggered']
|
||||||
|
const onScopeDispose: typeof import('vue')['onScopeDispose']
|
||||||
|
const onServerPrefetch: typeof import('vue')['onServerPrefetch']
|
||||||
|
const onUnmounted: typeof import('vue')['onUnmounted']
|
||||||
|
const onUpdated: typeof import('vue')['onUpdated']
|
||||||
|
const provide: typeof import('vue')['provide']
|
||||||
|
const reactive: typeof import('vue')['reactive']
|
||||||
|
const readonly: typeof import('vue')['readonly']
|
||||||
|
const ref: typeof import('vue')['ref']
|
||||||
|
const resolveComponent: typeof import('vue')['resolveComponent']
|
||||||
|
const resolveDirective: typeof import('vue')['resolveDirective']
|
||||||
|
const shallowReactive: typeof import('vue')['shallowReactive']
|
||||||
|
const shallowReadonly: typeof import('vue')['shallowReadonly']
|
||||||
|
const shallowRef: typeof import('vue')['shallowRef']
|
||||||
|
const toRaw: typeof import('vue')['toRaw']
|
||||||
|
const toRef: typeof import('vue')['toRef']
|
||||||
|
const toRefs: typeof import('vue')['toRefs']
|
||||||
|
const triggerRef: typeof import('vue')['triggerRef']
|
||||||
|
const unref: typeof import('vue')['unref']
|
||||||
|
const useAttrs: typeof import('vue')['useAttrs']
|
||||||
|
const useCssModule: typeof import('vue')['useCssModule']
|
||||||
|
const useCssVars: typeof import('vue')['useCssVars']
|
||||||
|
const useSlots: typeof import('vue')['useSlots']
|
||||||
|
const watch: typeof import('vue')['watch']
|
||||||
|
const watchEffect: typeof import('vue')['watchEffect']
|
||||||
|
const watchPostEffect: typeof import('vue')['watchPostEffect']
|
||||||
|
const watchSyncEffect: typeof import('vue')['watchSyncEffect']
|
||||||
|
}
|
35
components.d.ts
vendored
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
// generated by unplugin-vue-components
|
||||||
|
// We suggest you to commit this file into source control
|
||||||
|
// Read more: https://github.com/vuejs/core/pull/3399
|
||||||
|
import '@vue/runtime-core'
|
||||||
|
|
||||||
|
export {}
|
||||||
|
|
||||||
|
declare module '@vue/runtime-core' {
|
||||||
|
export interface GlobalComponents {
|
||||||
|
Background: typeof import('./src/components/Background.vue')['default']
|
||||||
|
ElCard: typeof import('element-plus/es')['ElCard']
|
||||||
|
ElCol: typeof import('element-plus/es')['ElCol']
|
||||||
|
ElCollapse: typeof import('element-plus/es')['ElCollapse']
|
||||||
|
ElCollapseItem: typeof import('element-plus/es')['ElCollapseItem']
|
||||||
|
ElProgress: typeof import('element-plus/es')['ElProgress']
|
||||||
|
ElRadio: typeof import('element-plus/es')['ElRadio']
|
||||||
|
ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
|
||||||
|
ElRow: typeof import('element-plus/es')['ElRow']
|
||||||
|
ElSlider: typeof import('element-plus/es')['ElSlider']
|
||||||
|
ElSwitch: typeof import('element-plus/es')['ElSwitch']
|
||||||
|
ElTooltip: typeof import('element-plus/es')['ElTooltip']
|
||||||
|
Footer: typeof import('./src/components/Footer.vue')['default']
|
||||||
|
Hitokoto: typeof import('./src/components/Hitokoto.vue')['default']
|
||||||
|
Links: typeof import('./src/components/Links.vue')['default']
|
||||||
|
Loading: typeof import('./src/components/Loading.vue')['default']
|
||||||
|
Message: typeof import('./src/components/Message.vue')['default']
|
||||||
|
MoreContent: typeof import('./src/components/MoreContent.vue')['default']
|
||||||
|
Music: typeof import('./src/components/Music.vue')['default']
|
||||||
|
Player: typeof import('./src/components/Player.vue')['default']
|
||||||
|
Set: typeof import('./src/components/Set.vue')['default']
|
||||||
|
SocialLinks: typeof import('./src/components/SocialLinks.vue')['default']
|
||||||
|
TimeCapsule: typeof import('./src/components/TimeCapsule.vue')['default']
|
||||||
|
Weather: typeof import('./src/components/Weather.vue')['default']
|
||||||
|
}
|
||||||
|
}
|
@ -1,89 +0,0 @@
|
|||||||
/*模糊渐入动画*/
|
|
||||||
@keyframes fade-in {
|
|
||||||
0% {
|
|
||||||
opacity: 0;
|
|
||||||
backdrop-filter: blur(0px);
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
opacity: 1;
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@-webkit-keyframes fade-in {
|
|
||||||
0% {
|
|
||||||
opacity: 0;
|
|
||||||
backdrop-filter: blur(0px);
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
opacity: 1;
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@-moz-keyframes fade-in {
|
|
||||||
0% {
|
|
||||||
opacity: 0;
|
|
||||||
backdrop-filter: blur(0px);
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
opacity: 1;
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@-o-keyframes fade-in {
|
|
||||||
0% {
|
|
||||||
opacity: 0;
|
|
||||||
backdrop-filter: blur(0px);
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
opacity: 1;
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*渐入动画*/
|
|
||||||
@keyframes fade {
|
|
||||||
0% {
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@-webkit-keyframes fade {
|
|
||||||
0% {
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@-moz-keyframes fade {
|
|
||||||
0% {
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@-o-keyframes fade {
|
|
||||||
0% {
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,30 +0,0 @@
|
|||||||
#cursor {
|
|
||||||
position: fixed;
|
|
||||||
width: 18px;
|
|
||||||
height: 18px;
|
|
||||||
background: #ffffffcc;
|
|
||||||
border-radius: 50%;
|
|
||||||
opacity: 0.25;
|
|
||||||
z-index: 99999999;
|
|
||||||
pointer-events: none;
|
|
||||||
transition: 0.2s ease-in-out;
|
|
||||||
transition-property: background, opacity, transform;
|
|
||||||
}
|
|
||||||
|
|
||||||
#cursor.hidden {
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#cursor.hover {
|
|
||||||
opacity: 0.1;
|
|
||||||
transform: scale(2.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
#cursor.active {
|
|
||||||
opacity: 0.5;
|
|
||||||
transform: scale(0.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
* {
|
|
||||||
cursor: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8' width='10px' height='10px'><circle cx='4' cy='4' r='4' fill='white' /></svg>") 4 4, auto !important
|
|
||||||
}
|
|
154
css/font.css
@ -1,154 +0,0 @@
|
|||||||
@font-face {
|
|
||||||
font-family: "Pacifico-Regular";
|
|
||||||
src: url('../font/Pacifico-Regular.ttf') format('truetype');
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face {
|
|
||||||
font-family: "UnidreamLED";
|
|
||||||
src: url('https://s-bj-2127-file.oss.dogecdn.com/font/UnidreamLED.ttf') format('truetype');
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face {
|
|
||||||
font-family: "PingFangSC";
|
|
||||||
src: url('https://s-bj-2127-file.oss.dogecdn.com/font/PingFangSC.woff2') format('woff2');
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face {
|
|
||||||
font-family: "iconfont";
|
|
||||||
/* Project id 2831425 */
|
|
||||||
src: url('../font/font_2831425_312vsfjkcz9.woff') format('woff2'),
|
|
||||||
url('../font/font_2831425_312vsfjkcz9.woff') format('woff'),
|
|
||||||
url('../font/font_2831425_312vsfjkcz9.ttf') format('truetype');
|
|
||||||
}
|
|
||||||
|
|
||||||
.iconfont {
|
|
||||||
font-family: "iconfont" !important;
|
|
||||||
font-size: 16px;
|
|
||||||
font-style: normal;
|
|
||||||
-webkit-font-smoothing: antialiased;
|
|
||||||
-moz-osx-font-smoothing: grayscale;
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-music:before {
|
|
||||||
content: "\e986";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-next-one:before {
|
|
||||||
content: "\e609";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-next-one-copy:before {
|
|
||||||
content: "\ebd5";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-pause:before {
|
|
||||||
content: "\e733";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-play:before {
|
|
||||||
content: "\e65c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-undo:before {
|
|
||||||
content: "\e875";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-wrench-fill:before {
|
|
||||||
content: "\e86e";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-plus:before {
|
|
||||||
content: "\e653";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-right:before {
|
|
||||||
content: "\e613";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-right-copy:before {
|
|
||||||
content: "\ebd4";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-times:before {
|
|
||||||
content: "\e857";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-bars:before {
|
|
||||||
content: "\e61f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-link:before {
|
|
||||||
content: "\e603";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-close:before {
|
|
||||||
content: "\e656";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-photo:before {
|
|
||||||
content: "\ebd3";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-navigation1:before {
|
|
||||||
content: "\e637";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-cloud:before {
|
|
||||||
content: "\e624";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-lab:before {
|
|
||||||
content: "\e88d";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-blog-solid:before {
|
|
||||||
content: "\e631";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-comment-alt-lines:before {
|
|
||||||
content: "\e679";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-music-list:before {
|
|
||||||
content: "\e699";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-youxiang:before {
|
|
||||||
content: "\e605";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-github:before {
|
|
||||||
content: "\e691";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-telegram1:before {
|
|
||||||
content: "\e731";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-QQ:before {
|
|
||||||
content: "\e882";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-twitter:before {
|
|
||||||
content: "\e883";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-github1:before {
|
|
||||||
content: "\e799";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-weixin:before {
|
|
||||||
content: "\e600";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-telegram:before {
|
|
||||||
content: "\e8db";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-yinhao-copy:before {
|
|
||||||
content: "\e608";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-yinhao-copy-copy:before {
|
|
||||||
content: "\e62e";
|
|
||||||
}
|
|
229
css/lantern.css
@ -1,229 +0,0 @@
|
|||||||
@charset "UTF-8";
|
|
||||||
|
|
||||||
.lantern__warpper {
|
|
||||||
position: fixed;
|
|
||||||
top: 12px;
|
|
||||||
left: 40px;
|
|
||||||
pointer-events: none;
|
|
||||||
-webkit-user-select: none;
|
|
||||||
-moz-user-select: none;
|
|
||||||
-ms-user-select: none;
|
|
||||||
user-select: none;
|
|
||||||
z-index: 999
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__warpper.lantern__secondary {
|
|
||||||
left: calc(100% - 130px)
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__warpper.lantern__secondary .lantern__box {
|
|
||||||
-webkit-animation-duration: 3s;
|
|
||||||
animation-duration: 3s
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__box {
|
|
||||||
position: relative;
|
|
||||||
display: inline-block;
|
|
||||||
width: 90px;
|
|
||||||
height: 70px;
|
|
||||||
background: rgba(216, 0, 15, .8);
|
|
||||||
border-radius: 50% 50%;
|
|
||||||
animation: lantern-swing 3s ease-in-out infinite alternate-reverse;
|
|
||||||
-webkit-transform-origin: 50% -70px;
|
|
||||||
-ms-transform-origin: 50% -70px;
|
|
||||||
transform-origin: 50% -70px;
|
|
||||||
-webkit-box-shadow: -5px 5px 50px 4px #fa6c00;
|
|
||||||
box-shadow: -5px 5px 50px 4px #fa6c00
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__box:after,
|
|
||||||
.lantern__box:before {
|
|
||||||
content: "";
|
|
||||||
position: absolute;
|
|
||||||
height: 8px;
|
|
||||||
width: 45px;
|
|
||||||
left: 50%;
|
|
||||||
border: 1px solid #dc8f03;
|
|
||||||
background: -webkit-gradient(linear, left top, right top, from(#dc8f03), color-stop(orange), color-stop(#dc8f03), color-stop(orange), to(#dc8f03));
|
|
||||||
background: -o-linear-gradient(left, #dc8f03, orange, #dc8f03, orange, #dc8f03);
|
|
||||||
background: linear-gradient(90deg, #dc8f03, orange, #dc8f03, orange, #dc8f03)
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__box:before {
|
|
||||||
top: 0;
|
|
||||||
border-radius: 5px 5px 0 0;
|
|
||||||
-webkit-transform: translate(-50%, -50%);
|
|
||||||
-ms-transform: translate(-50%, -50%);
|
|
||||||
transform: translate(-50%, -50%)
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__box:after {
|
|
||||||
bottom: 0;
|
|
||||||
border-radius: 0 0 5px 5px;
|
|
||||||
-webkit-transform: translate(-50%, 50%);
|
|
||||||
-ms-transform: translate(-50%, 50%);
|
|
||||||
transform: translate(-50%, 50%)
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__line {
|
|
||||||
position: absolute;
|
|
||||||
width: 2px;
|
|
||||||
height: 12px;
|
|
||||||
top: 0;
|
|
||||||
left: 50%;
|
|
||||||
-webkit-transform: translate(-50%, -100%);
|
|
||||||
-ms-transform: translate(-50%, -100%);
|
|
||||||
transform: translate(-50%, -100%);
|
|
||||||
background: #dc8f03
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__circle {
|
|
||||||
width: 80%;
|
|
||||||
-webkit-box-sizing: border-box;
|
|
||||||
box-sizing: border-box
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__circle,
|
|
||||||
.lantern__circle .lantern__ellipse {
|
|
||||||
height: 100%;
|
|
||||||
margin: 0 auto;
|
|
||||||
border-radius: 50%;
|
|
||||||
border: 2px solid #dc8f03
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__circle .lantern__ellipse {
|
|
||||||
width: 50%
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__circle .lantern__text {
|
|
||||||
font-family: 华文行楷, Microsoft YaHei, sans-serif;
|
|
||||||
font-size: 24.3px;
|
|
||||||
color: #dc8f03;
|
|
||||||
font-weight: 700;
|
|
||||||
line-height: 66px;
|
|
||||||
text-align: center
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__tail {
|
|
||||||
position: relative;
|
|
||||||
width: 4px;
|
|
||||||
height: 12px;
|
|
||||||
margin: 0 auto;
|
|
||||||
animation: lantern-swing 3s ease-in-out infinite alternate-reverse;
|
|
||||||
background: orange;
|
|
||||||
border-radius: 0 0 5px 5px
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__tail .lantern__junction {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 50%;
|
|
||||||
width: 8px;
|
|
||||||
height: 8px;
|
|
||||||
-webkit-transform: translate(-50%, 8.4px);
|
|
||||||
-ms-transform: translate(-50%, 8.4px);
|
|
||||||
transform: translate(-50%, 8.4px);
|
|
||||||
background: #e69603;
|
|
||||||
border-radius: 50%
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__tail .lantern__rect {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 50%;
|
|
||||||
-webkit-transform: translate(-50%, 10.8px);
|
|
||||||
-ms-transform: translate(-50%, 10.8px);
|
|
||||||
transform: translate(-50%, 10.8px);
|
|
||||||
width: 8px;
|
|
||||||
height: 24px;
|
|
||||||
background: orange;
|
|
||||||
border-radius: 5px 5px 0 5px
|
|
||||||
}
|
|
||||||
|
|
||||||
@-webkit-keyframes lantern-swing {
|
|
||||||
0% {
|
|
||||||
-webkit-transform: rotate(-8deg);
|
|
||||||
transform: rotate(-8deg)
|
|
||||||
}
|
|
||||||
|
|
||||||
to {
|
|
||||||
-webkit-transform: rotate(8deg);
|
|
||||||
transform: rotate(8deg)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes lantern-swing {
|
|
||||||
0% {
|
|
||||||
-webkit-transform: rotate(-8deg);
|
|
||||||
transform: rotate(-8deg)
|
|
||||||
}
|
|
||||||
|
|
||||||
to {
|
|
||||||
-webkit-transform: rotate(8deg);
|
|
||||||
transform: rotate(8deg)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width:460px) {
|
|
||||||
.lantern__warpper {
|
|
||||||
top: 8px;
|
|
||||||
left: 30px
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__warpper.lantern__secondary {
|
|
||||||
left: calc(100% - 80px)
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__box {
|
|
||||||
width: 50px;
|
|
||||||
height: 40px;
|
|
||||||
-webkit-transform-origin: 50% -40px;
|
|
||||||
-ms-transform-origin: 50% -40px;
|
|
||||||
transform-origin: 50% -40px;
|
|
||||||
-webkit-box-shadow: -5px 5px 50px -1px #fa6c00;
|
|
||||||
box-shadow: -5px 5px 50px -1px #fa6c00
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__box:after,
|
|
||||||
.lantern__box:before {
|
|
||||||
height: 4px;
|
|
||||||
width: 25px
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__line {
|
|
||||||
width: 2px;
|
|
||||||
height: 8px
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__circle .lantern__text {
|
|
||||||
font-size: 13.5px;
|
|
||||||
line-height: 38px
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__tail {
|
|
||||||
width: 4px;
|
|
||||||
height: 8px
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__tail .lantern__junction {
|
|
||||||
width: 8px;
|
|
||||||
height: 8px;
|
|
||||||
-webkit-transform: translate(-50%, 5.6px);
|
|
||||||
-ms-transform: translate(-50%, 5.6px);
|
|
||||||
transform: translate(-50%, 5.6px)
|
|
||||||
}
|
|
||||||
|
|
||||||
.lantern__tail .lantern__rect {
|
|
||||||
-webkit-transform: translate(-50%, 7.2px);
|
|
||||||
-ms-transform: translate(-50%, 7.2px);
|
|
||||||
transform: translate(-50%, 7.2px);
|
|
||||||
width: 8px;
|
|
||||||
height: 16px
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width:720px) {
|
|
||||||
.lantern__warpper {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
|
125
css/loading.css
@ -1,125 +0,0 @@
|
|||||||
#loading-box .loading-left-bg,
|
|
||||||
#loading-box .loading-right-bg {
|
|
||||||
position: fixed;
|
|
||||||
z-index: 999998;
|
|
||||||
width: 50%;
|
|
||||||
height: 100%;
|
|
||||||
background-color: rgb(81 81 81 / 80%);
|
|
||||||
transition: all 0.7s cubic-bezier(0.42, 0, 0, 1.01);
|
|
||||||
backdrop-filter: blur(40px);
|
|
||||||
}
|
|
||||||
|
|
||||||
#loading-box .loading-right-bg {
|
|
||||||
right: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#loading-box>.spinner-box {
|
|
||||||
position: fixed;
|
|
||||||
z-index: 999999;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
width: 100%;
|
|
||||||
height: 100vh;
|
|
||||||
}
|
|
||||||
|
|
||||||
#loading-box .spinner-box .loading-word {
|
|
||||||
position: absolute;
|
|
||||||
color: #ffffff;
|
|
||||||
font-size: 0.95rem;
|
|
||||||
transform: translateY(64px);
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
p.loading-title {
|
|
||||||
font-size: 1.25rem;
|
|
||||||
margin: 20px 10px 4px 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#loading-box .spinner-box .configure-core {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
background-color: #37474f;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.loaded div.loading-left-bg {
|
|
||||||
transform: translate(-100%, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
div.loaded div.loading-right-bg {
|
|
||||||
transform: translate(100%, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
div.loaded div.spinner-box {
|
|
||||||
display: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.loader {
|
|
||||||
position: absolute;
|
|
||||||
top: calc(50% - 32px);
|
|
||||||
left: calc(50% - 32px);
|
|
||||||
width: 64px;
|
|
||||||
height: 64px;
|
|
||||||
border-radius: 50%;
|
|
||||||
perspective: 800px;
|
|
||||||
transition: all 0.7s cubic-bezier(0.42, 0, 0, 1.01);
|
|
||||||
}
|
|
||||||
|
|
||||||
.inner {
|
|
||||||
position: absolute;
|
|
||||||
box-sizing: border-box;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
border-radius: 50%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.inner.one {
|
|
||||||
left: 0%;
|
|
||||||
top: 0%;
|
|
||||||
animation: rotate-one 1s linear infinite;
|
|
||||||
border-bottom: 3px solid #EFEFFA;
|
|
||||||
}
|
|
||||||
|
|
||||||
.inner.two {
|
|
||||||
right: 0%;
|
|
||||||
top: 0%;
|
|
||||||
animation: rotate-two 1s linear infinite;
|
|
||||||
border-right: 3px solid #EFEFFA;
|
|
||||||
}
|
|
||||||
|
|
||||||
.inner.three {
|
|
||||||
right: 0%;
|
|
||||||
bottom: 0%;
|
|
||||||
animation: rotate-three 1s linear infinite;
|
|
||||||
border-top: 3px solid #EFEFFA;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes rotate-one {
|
|
||||||
0% {
|
|
||||||
transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg);
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes rotate-two {
|
|
||||||
0% {
|
|
||||||
transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg);
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes rotate-three {
|
|
||||||
0% {
|
|
||||||
transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg);
|
|
||||||
}
|
|
||||||
|
|
||||||
100% {
|
|
||||||
transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg);
|
|
||||||
}
|
|
||||||
}
|
|
321
css/mobile.css
@ -1,321 +0,0 @@
|
|||||||
@charset"utf-8";
|
|
||||||
|
|
||||||
/*小于1400px时*/
|
|
||||||
@media (max-width: 1400px) {}
|
|
||||||
|
|
||||||
/*小于1200px时*/
|
|
||||||
@media (max-width: 1200px) {
|
|
||||||
|
|
||||||
/*总布局*/
|
|
||||||
.container,
|
|
||||||
.container-lg,
|
|
||||||
.container-md,
|
|
||||||
.container-sm {
|
|
||||||
max-width: 1100px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.weekday {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*音乐播放器*/
|
|
||||||
.music-text {
|
|
||||||
max-width: 170px !important;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*小于992px时*/
|
|
||||||
@media (max-width: 992px) {
|
|
||||||
|
|
||||||
/*简介不可点击
|
|
||||||
.message {
|
|
||||||
pointer-events: none;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*一言*/
|
|
||||||
.col.hitokotos {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*日期显示*/
|
|
||||||
.weekday {
|
|
||||||
display: inline;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*标题文字*/
|
|
||||||
.main-img img {
|
|
||||||
width: 110px;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.img-title {
|
|
||||||
font-size: 4.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.img-text {
|
|
||||||
font-size: 1.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*链接卡片文字*/
|
|
||||||
span.link-name {
|
|
||||||
display: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.link-card i {
|
|
||||||
margin-left: 10px !important;
|
|
||||||
margin-right: 10px !important;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*小于840px时*/
|
|
||||||
@media (max-width: 840px) {
|
|
||||||
|
|
||||||
|
|
||||||
/*社交链接*/
|
|
||||||
.social {
|
|
||||||
max-width: 100%;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
#link-text {
|
|
||||||
display: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.link i {
|
|
||||||
margin: 0px 20px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*小于789px时*/
|
|
||||||
@media (max-width: 789px) {
|
|
||||||
|
|
||||||
/*标题文字*/
|
|
||||||
span.img-text {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*小于768px时*/
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
|
|
||||||
/*标题文字*/
|
|
||||||
.main-img img {
|
|
||||||
width: 100px;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.img-title {
|
|
||||||
font-size: 4.5rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*小于720px时*/
|
|
||||||
@media (max-width: 720px) {
|
|
||||||
|
|
||||||
/*左侧栏高度*/
|
|
||||||
.main-left {
|
|
||||||
transform: translateY(20px);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*右侧栏隐藏*/
|
|
||||||
.col.right {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*标题文字*/
|
|
||||||
span.img-text {
|
|
||||||
display: inline;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*简介*/
|
|
||||||
.message {
|
|
||||||
max-width: 100%;
|
|
||||||
pointer-events: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
.des {
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*链接卡片*/
|
|
||||||
.link-card {
|
|
||||||
height: 80px !important;
|
|
||||||
align-items: center !important;
|
|
||||||
flex-direction: column !important;
|
|
||||||
justify-content: center !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.link-card i {
|
|
||||||
font-size: 1.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.link-name {
|
|
||||||
display: block !important;
|
|
||||||
font-size: 1.05rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.line-text,
|
|
||||||
i.iconfont.icon-link {
|
|
||||||
font-size: 1.20rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*菜单栏按钮*/
|
|
||||||
.menu {
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
position: fixed;
|
|
||||||
top: 84%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.munu-button {
|
|
||||||
padding: 5px 20px;
|
|
||||||
background: rgb(0 0 0 / 20%);
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
border-radius: 6px;
|
|
||||||
font-size: 1.25rem;
|
|
||||||
transition: 0.5s;
|
|
||||||
width: 60px;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
height: 40px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*页脚文字*/
|
|
||||||
footer {
|
|
||||||
font-size: 0.85rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*音乐播放器*/
|
|
||||||
.music-text {
|
|
||||||
max-width: 100% !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*隐藏鼠标样式*/
|
|
||||||
#cursor {
|
|
||||||
background: transparent !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/*小于390px时*/
|
|
||||||
@media (max-width: 390px) {
|
|
||||||
.main-img img {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* 大于720px时 */
|
|
||||||
@media (min-width: 720px) {
|
|
||||||
.menu {
|
|
||||||
display: none !important;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 大于992px时 */
|
|
||||||
@media (min-width: 992px) {
|
|
||||||
|
|
||||||
/*时钟显示*/
|
|
||||||
span#win_text,
|
|
||||||
span#win_speed {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 大于1400px时 */
|
|
||||||
@media (min-width: 1400px) {
|
|
||||||
|
|
||||||
/*时钟显示*/
|
|
||||||
span#win_text,
|
|
||||||
span#win_speed {
|
|
||||||
display: inline !important;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
菜单按钮
|
|
||||||
*/
|
|
||||||
.menus .col.left {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menus .col.right {
|
|
||||||
display: block !important;
|
|
||||||
transition: 0.5s;
|
|
||||||
padding: 0rem 0.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*功能区调整*/
|
|
||||||
.menus .col.hitokotos {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menus .col.times {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*边界布局*/
|
|
||||||
.menus .row {
|
|
||||||
--bs-gutter-x: 0rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menus .col.\32 {
|
|
||||||
margin: 0 0.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menus .logo {
|
|
||||||
display: inline !important;
|
|
||||||
text-align: center;
|
|
||||||
position: fixed;
|
|
||||||
top: 8%;
|
|
||||||
font-size: 1.75rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*第二屏logo*/
|
|
||||||
.logo-text {
|
|
||||||
font-family: 'Pacifico-Regular' !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*切换动画*/
|
|
||||||
/*
|
|
||||||
.hitokoto,
|
|
||||||
.time,
|
|
||||||
.link-card,
|
|
||||||
.message {
|
|
||||||
animation: fade-in;
|
|
||||||
-webkit-animation: fade-in 0.5s;
|
|
||||||
-moz-animation: fade-in 0.5s;
|
|
||||||
-o-animation: fade-in 0.5s;
|
|
||||||
-ms-animation: fade-in 0.5s;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
.logo,
|
|
||||||
.line,
|
|
||||||
.main-img,
|
|
||||||
.social,
|
|
||||||
.close,
|
|
||||||
.hitokoto,
|
|
||||||
.time,
|
|
||||||
.link-card,
|
|
||||||
.message,
|
|
||||||
#link-text {
|
|
||||||
animation: fade 0.5;
|
|
||||||
-webkit-animation: fade 0.5s;
|
|
||||||
-moz-animation: fade 0.5s;
|
|
||||||
-o-animation: fade 0.5s;
|
|
||||||
-ms-animation: fade 0.5s;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
移动端功能区切换
|
|
||||||
*/
|
|
||||||
.mobile .col.hitokotos {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mobile .col.times {
|
|
||||||
display: block;
|
|
||||||
}
|
|
651
css/style.css
@ -1,651 +0,0 @@
|
|||||||
@charset"utf-8";
|
|
||||||
|
|
||||||
/*全局样式*/
|
|
||||||
html,
|
|
||||||
body {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
*,
|
|
||||||
a,
|
|
||||||
p {
|
|
||||||
text-decoration: none;
|
|
||||||
transition: 0.3s;
|
|
||||||
color: #efefef;
|
|
||||||
user-select: none;
|
|
||||||
font-family: 'PingFangSC';
|
|
||||||
}
|
|
||||||
|
|
||||||
a:hover {
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cards {
|
|
||||||
transition: 0.5s;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cards:hover {
|
|
||||||
transform: scale(1.01);
|
|
||||||
transition: 0.5s;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cards:active {
|
|
||||||
transform: scale(0.95);
|
|
||||||
transition: 0.5s;
|
|
||||||
}
|
|
||||||
|
|
||||||
#section {
|
|
||||||
background-image: url(https://api.ixiaowai.cn/gqapi/gqapi.php), url(../img/background.jpg);
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
background-position: center center;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*页面样式*/
|
|
||||||
section {
|
|
||||||
display: block;
|
|
||||||
position: fixed;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
min-height: 600px;
|
|
||||||
}
|
|
||||||
|
|
||||||
main {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
background: rgb(0 0 0 / 20%);
|
|
||||||
display: flex;
|
|
||||||
/*align-items: center;*/
|
|
||||||
}
|
|
||||||
|
|
||||||
.container {
|
|
||||||
width: 100%;
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-around;
|
|
||||||
}
|
|
||||||
|
|
||||||
.row {
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main-left {
|
|
||||||
/*transform: translateY(240px);*/
|
|
||||||
transform: translateY(40px);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
.main-right {
|
|
||||||
transform: translateY(38%);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
.row.rightone {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*头像*/
|
|
||||||
.main-img {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main-img img {
|
|
||||||
border-radius: 50%;
|
|
||||||
width: 120px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.main-img img:hover {
|
|
||||||
transform: rotate(360deg);
|
|
||||||
}
|
|
||||||
|
|
||||||
.img-title {
|
|
||||||
width: 100%;
|
|
||||||
margin-left: 12px;
|
|
||||||
transform: translateY(-8%);
|
|
||||||
}
|
|
||||||
|
|
||||||
span.img-title {
|
|
||||||
font-size: 5rem;
|
|
||||||
font-family: 'Pacifico-Regular' !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.img-text {
|
|
||||||
font-size: 2rem;
|
|
||||||
font-family: 'Pacifico-Regular' !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*简介*/
|
|
||||||
.message {
|
|
||||||
background: rgb(0 0 0 / 25%);
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
/*margin: 0.5rem;*/
|
|
||||||
padding: 1rem;
|
|
||||||
border-radius: 6px;
|
|
||||||
margin-top: 3.5rem;
|
|
||||||
max-width: 460px;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
|
|
||||||
.des {
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
|
|
||||||
p.des-title {
|
|
||||||
margin: 1rem 1rem;
|
|
||||||
line-height: 2rem;
|
|
||||||
font-size: 1.10rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
span#change {
|
|
||||||
font-family: 'Pacifico-Regular' !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
i.iconfont.icon-yinhao-copy {
|
|
||||||
align-self: flex-end;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*社交链接*/
|
|
||||||
.social {
|
|
||||||
margin-top: 1rem;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
max-width: 460px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.link i {
|
|
||||||
font-size: 1.75rem;
|
|
||||||
margin: 0px 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
.social .link i:hover {
|
|
||||||
font-size: 2.5rem;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
#link-text {
|
|
||||||
display: none;
|
|
||||||
flex: 1;
|
|
||||||
text-align: right;
|
|
||||||
margin-right: 1rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*一言*/
|
|
||||||
.hitokoto {
|
|
||||||
width: 100%;
|
|
||||||
background: rgb(0 0 0 / 25%);
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
padding: 20px;
|
|
||||||
border-radius: 6px;
|
|
||||||
height: 165px;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hitokoto-all {
|
|
||||||
margin-top: 10px;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hitokoto-text {
|
|
||||||
font-size: 1.2rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hitokoto-from {
|
|
||||||
margin-top: 10px;
|
|
||||||
font-weight: bold;
|
|
||||||
align-self: flex-end;
|
|
||||||
font-size: 1.10rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.open-music {
|
|
||||||
display: none;
|
|
||||||
justify-content: center;
|
|
||||||
background: rgb(0 0 0 / 15%);
|
|
||||||
padding: 4px 0px;
|
|
||||||
animation: fade;
|
|
||||||
-webkit-animation: fade 0.5s;
|
|
||||||
-moz-animation: fade 0.5s;
|
|
||||||
-o-animation: fade 0.5s;
|
|
||||||
-ms-animation: fade 0.5s;
|
|
||||||
}
|
|
||||||
|
|
||||||
.open-music:hover {
|
|
||||||
background: rgb(0 0 0 / 30%);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*音乐播放器卡片*/
|
|
||||||
#music {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.music {
|
|
||||||
width: 100%;
|
|
||||||
background: rgb(0 0 0 / 25%);
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
padding: 20px;
|
|
||||||
border-radius: 6px;
|
|
||||||
height: 165px;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
flex-direction: column;
|
|
||||||
animation: fade;
|
|
||||||
-webkit-animation: fade 0.3s;
|
|
||||||
-moz-animation: fade 0.3s;
|
|
||||||
-o-animation: fade 0.3s;
|
|
||||||
-ms-animation: fade 0.3s;
|
|
||||||
}
|
|
||||||
|
|
||||||
.music-all {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-around;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.music-button {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-bottom: 6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.music-control {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: row;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: space-evenly;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
i.iconfont.icon-play,
|
|
||||||
i.iconfont.icon-pause {
|
|
||||||
font-size: 2.25rem;
|
|
||||||
padding: 6px;
|
|
||||||
border-radius: 6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
i.iconfont.icon-play:hover,
|
|
||||||
i.iconfont.icon-pause:hover {
|
|
||||||
background: rgb(255 255 255 / 20%);
|
|
||||||
padding: 6px;
|
|
||||||
border-radius: 6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
i#last,
|
|
||||||
i#next {
|
|
||||||
font-size: 2.0rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.music-text {
|
|
||||||
font-size: 1.15rem;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
max-width: 200px;
|
|
||||||
overflow-x: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
|
|
||||||
#music-open,
|
|
||||||
#music-close {
|
|
||||||
background: rgb(255 255 255 / 15%);
|
|
||||||
padding: 2px 8px;
|
|
||||||
border-radius: 6px;
|
|
||||||
margin: 0px 6px;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
overflow-x: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
|
|
||||||
#music-open:hover,
|
|
||||||
#music-close:hover {
|
|
||||||
background: rgb(255 255 255 / 30%);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*时间卡片*/
|
|
||||||
.time {
|
|
||||||
width: 100%;
|
|
||||||
background: rgb(0 0 0 / 25%);
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
padding: 20px;
|
|
||||||
border-radius: 6px;
|
|
||||||
text-align: center;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
height: 165px;
|
|
||||||
font-size: 1.10rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.time-text {
|
|
||||||
font-size: 3.25rem;
|
|
||||||
letter-spacing: 2px;
|
|
||||||
font-family: 'UnidreamLED' !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*分割线*/
|
|
||||||
.line {
|
|
||||||
margin: 1rem 0.25rem;
|
|
||||||
margin-top: 2rem;
|
|
||||||
font-size: 1.2rem;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.line-text {
|
|
||||||
font-size: 1.35rem;
|
|
||||||
margin: 0px 6px;
|
|
||||||
}
|
|
||||||
|
|
||||||
i.iconfont.icon-link {
|
|
||||||
font-size: 1.4rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*链接卡片*/
|
|
||||||
.link-card {
|
|
||||||
height: 100px;
|
|
||||||
width: 100%;
|
|
||||||
border-radius: 6px;
|
|
||||||
background: rgb(0 0 0 / 25%);
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
flex-direction: row;
|
|
||||||
justify-content: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.link-card i {
|
|
||||||
margin-left: 0px;
|
|
||||||
font-size: 2.2rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.link-card:hover {
|
|
||||||
background: rgb(0 0 0 / 40%);
|
|
||||||
transition: 0.5s;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.link-name {
|
|
||||||
font-size: 1.2rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.link-card:hover span.link-name {
|
|
||||||
font-size: 1.25rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*更多页面*/
|
|
||||||
.more {
|
|
||||||
display: none !important;
|
|
||||||
width: 46%;
|
|
||||||
z-index: 999;
|
|
||||||
position: fixed;
|
|
||||||
height: 82%;
|
|
||||||
right: 4%;
|
|
||||||
background: rgb(0 0 0 / 25%);
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
top: 7%;
|
|
||||||
border-radius: 6px;
|
|
||||||
padding: 30px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mores .more {
|
|
||||||
display: flex !important;
|
|
||||||
justify-content: space-evenly;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
animation: fade;
|
|
||||||
-webkit-animation: fade 0.3s;
|
|
||||||
-moz-animation: fade 0.3s;
|
|
||||||
-o-animation: fade 0.3s;
|
|
||||||
-ms-animation: fade 0.3s;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mores .col.right {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*关闭按钮*/
|
|
||||||
|
|
||||||
.close {
|
|
||||||
display: none;
|
|
||||||
left: auto;
|
|
||||||
top: 4px;
|
|
||||||
right: 8px;
|
|
||||||
font-size: 1.45rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.close:hover {
|
|
||||||
transform: scale(1.2);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*时间胶囊*/
|
|
||||||
.progress {
|
|
||||||
width: 100%;
|
|
||||||
height: 20px;
|
|
||||||
align-items: center;
|
|
||||||
background: rgb(255 255 255 / 25%) !important;
|
|
||||||
backdrop-filter: blur(5px);
|
|
||||||
}
|
|
||||||
|
|
||||||
.progress-bar {
|
|
||||||
font-family: 'UnidreamLED' !important;
|
|
||||||
background-color: #efefef !important;
|
|
||||||
color: rgb(86 77 89) !important;
|
|
||||||
font-size: 0.95rem;
|
|
||||||
height: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.date {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.date-text {
|
|
||||||
margin: 1rem 0rem 0.5rem 0rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*更多页面链接*/
|
|
||||||
|
|
||||||
.mores .link-card {
|
|
||||||
height: 48px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*box*/
|
|
||||||
.box-left {
|
|
||||||
flex: 0 44%;
|
|
||||||
min-width: 400px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.box {
|
|
||||||
position: fixed;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
top: 0;
|
|
||||||
bottom: 0;
|
|
||||||
z-index: 1996;
|
|
||||||
background-color: rgba(0, 0, 0, .5);
|
|
||||||
backdrop-filter: blur(20px);
|
|
||||||
animation: fade 0.3s;
|
|
||||||
}
|
|
||||||
|
|
||||||
.box-wrapper {
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
-webkit-transform: translate(-50%, -50%);
|
|
||||||
transform: translate(-50%, -50%);
|
|
||||||
z-index: 1997;
|
|
||||||
width: 80%;
|
|
||||||
height: 80%;
|
|
||||||
background: rgb(255 255 255 / 40%);
|
|
||||||
border-radius: 6px;
|
|
||||||
-webkit-animation: fade .3s;
|
|
||||||
animation: fade .3s;
|
|
||||||
padding: 40px;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: row;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
|
|
||||||
.upnote {
|
|
||||||
margin-top: 2rem;
|
|
||||||
margin-left: 2rem;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
line-height: 40px;
|
|
||||||
font-size: 1.25rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.closebox {
|
|
||||||
left: auto;
|
|
||||||
top: 10px;
|
|
||||||
right: 16px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.closebox:hover {
|
|
||||||
transform: scale(1.2);
|
|
||||||
}
|
|
||||||
|
|
||||||
i.iconfont.icon-close,
|
|
||||||
i.iconfont.icon-github1 {
|
|
||||||
font-size: 1.45rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*Aplayer*/
|
|
||||||
.box-right {
|
|
||||||
flex: 0 54%;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: row;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.aplayer {
|
|
||||||
background: transparent !important;
|
|
||||||
width: 100%;
|
|
||||||
border-radius: 6px !important;
|
|
||||||
margin-right: 18px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.aplayer.aplayer-withlrc .aplayer-pic {
|
|
||||||
border-radius: 6px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*歌曲名称*/
|
|
||||||
.aplayer .aplayer-info .aplayer-music .aplayer-title {
|
|
||||||
font-size: 16px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*音乐列表*/
|
|
||||||
.aplayer.aplayer-withlist .aplayer-list {
|
|
||||||
margin-top: 8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.aplayer .aplayer-list ol li.aplayer-list-light {
|
|
||||||
background: #ffffff57 !important;
|
|
||||||
border-radius: 6px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.aplayer .aplayer-list ol li:hover {
|
|
||||||
background: #ffffff57 !important;
|
|
||||||
border-radius: 6px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.aplayer .aplayer-list ol li {
|
|
||||||
border-top: 1px solid transparent !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.aplayer.aplayer-withlist .aplayer-info {
|
|
||||||
border-bottom: 1px solid transparent !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*控制面板 - Bug*/
|
|
||||||
.aplayer .aplayer-info .aplayer-controller {
|
|
||||||
display: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*歌词间距*/
|
|
||||||
.aplayer .aplayer-lrc {
|
|
||||||
margin: 4px 0 0px !important;
|
|
||||||
height: 34px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*歌词大小*/
|
|
||||||
.aplayer .aplayer-lrc p.aplayer-lrc-current {
|
|
||||||
font-size: 14.5px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*全局字体颜色*/
|
|
||||||
.aplayer .aplayer-info .aplayer-music .aplayer-title,
|
|
||||||
.aplayer .aplayer-info .aplayer-music .aplayer-author,
|
|
||||||
.aplayer .aplayer-lrc p,
|
|
||||||
span.aplayer-list-title,
|
|
||||||
span.aplayer-list-author,
|
|
||||||
span.aplayer-list-index {
|
|
||||||
color: white !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*全局背景*/
|
|
||||||
.aplayer .aplayer-lrc:after,
|
|
||||||
.aplayer .aplayer-lrc:before {
|
|
||||||
background: transparent !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*Aplayer结束*/
|
|
||||||
|
|
||||||
/*移动端页面切换按钮*/
|
|
||||||
i.iconfont.icon-bars,
|
|
||||||
i.iconfont.icon-times {
|
|
||||||
font-size: 1.25rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*页脚样式*/
|
|
||||||
footer {
|
|
||||||
text-align: center;
|
|
||||||
height: 46px;
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
background: rgb(0 0 0 / 25%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.power {
|
|
||||||
line-height: 46px;
|
|
||||||
opacity: 0.8;
|
|
||||||
}
|
|
||||||
|
|
||||||
.lrc-show {
|
|
||||||
/*播放音乐时底栏歌词*/
|
|
||||||
font-size: 1.15rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*弹窗样式*/
|
|
||||||
.iziToast {
|
|
||||||
background: rgb(0 0 0 / 45%) !important;
|
|
||||||
backdrop-filter: blur(10px) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.iziToast>.iziToast-body .iziToast-title {
|
|
||||||
font-size: 16px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.iziToast-body .iziToast-message {
|
|
||||||
line-height: 18px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.iziToast:after {
|
|
||||||
box-shadow: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.iziToast-message.slideIn {
|
|
||||||
margin-top: 5px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.iziToast-message {
|
|
||||||
word-break: break-all !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.iziToast>.iziToast-close {
|
|
||||||
background: url(https://cdn.jsdelivr.net/gh/imsyy/file/pic/close.png) no-repeat 50% 50% !important;
|
|
||||||
background-size: 8px !important;
|
|
||||||
}
|
|
9
docker-compose.yml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
ports:
|
||||||
|
- "12445:12445"
|
BIN
favicon.ico
Before Width: | Height: | Size: 4.2 KiB |
Before Width: | Height: | Size: 276 KiB |
409
index.html
@ -1,390 +1,39 @@
|
|||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html lang="zh-CN">
|
<html lang="zh-CN">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<!-- 基础信息 -->
|
<meta charset="UTF-8" />
|
||||||
<meta charset="utf-8">
|
<meta http-equiv="Access-Control-Allow-Origin" content="*" />
|
||||||
<meta http-equiv="Access-Control-Allow-Origin" content="*">
|
<!-- <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests"> -->
|
||||||
<meta name="renderer" content="webkit" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
<link rel="icon" href="%VITE_SITE_LOGO%" />
|
||||||
<meta name="force-rendering" content="webkit" />
|
<link rel="apple-touch-icon" href="%VITE_SITE_APPLE_LOGO%" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<link rel="bookmark" href="%VITE_SITE_APPLE_LOGO%" />
|
||||||
<meta name="description" content="無名の主页">
|
<link rel="apple-touch-icon-precomposed" sizes="200x200" href="%VITE_SITE_APPLE_LOGO%" />
|
||||||
<meta name="keywords" content="無名,个人主页">
|
<meta name="description" content="%VITE_SITE_DES%" />
|
||||||
<meta name="author" content="無名">
|
<meta name="keywords" content="%VITE_SITE_KEYWORDS%" />
|
||||||
<title>無名の主页</title>
|
<meta name="author" content="%VITE_SITE_ANTHOR%" />
|
||||||
<!-- 引入样式 -->
|
<meta name="theme-color" content="#424242" />
|
||||||
<link rel="stylesheet" type="text/css"
|
<title>%VITE_SITE_NAME%</title>
|
||||||
href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.1.3/css/bootstrap.min.css">
|
<!-- HarmonyOS Sans -->
|
||||||
<link rel="stylesheet" type="text/css" href="./css/style.css">
|
<!-- 本站 CDN 已开启防盗链,非本站域名不可访问,请更改链接为下方内容,否则自定义字体将失效 -->
|
||||||
<link rel="stylesheet" type="text/css" href="./css/mobile.css">
|
<link rel="stylesheet" href="https://s1.hdslb.com/bfs/static/jinkela/long/font/regular.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="./css/font.css">
|
<!-- <link rel="stylesheet" href="https://cdn.imsyy.top/gh/imsyy/file/font/HarmonyOS_Sans/regular.min.css" /> -->
|
||||||
<link rel="stylesheet" type="text/css" href="./css/loading.css">
|
|
||||||
<link rel="stylesheet" type="text/css" href="./css/animation.css">
|
|
||||||
<link rel="stylesheet" type="text/css" href="./css/cursor.css">
|
|
||||||
<link rel="stylesheet" type="text/css" href="./css/lantern.css">
|
|
||||||
<link rel="icon" href="./favicon.ico">
|
|
||||||
<link rel="apple-touch-icon" href="./img/apple-touch-icon.png">
|
|
||||||
<!-- Izitoast -->
|
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/izitoast/1.4.0/css/iziToast.min.css">
|
|
||||||
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/izitoast/1.4.0/js/iziToast.min.js">
|
|
||||||
</script>
|
|
||||||
<!-- jQuery -->
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
|
|
||||||
<!-- Aplayer -->
|
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/aplayer/1.10.1/APlayer.min.css"
|
|
||||||
crossorigin="anonymous" referrerpolicy="no-referrer" />
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/aplayer/1.10.1/APlayer.min.js" crossorigin="anonymous"
|
|
||||||
referrerpolicy="no-referrer"></script>
|
|
||||||
<!-- 百度统计 -->
|
|
||||||
<script>
|
|
||||||
var _hmt = _hmt || [];
|
|
||||||
(function () {
|
|
||||||
var hm = document.createElement("script");
|
|
||||||
hm.src = "https://hm.baidu.com/hm.js?14e9f35ff8bc67fd4bcb5f07a6e6655a";
|
|
||||||
var s = document.getElementsByTagName("script")[0];
|
|
||||||
s.parentNode.insertBefore(hm, s);
|
|
||||||
})();
|
|
||||||
</script>
|
|
||||||
<!-- IE Out -->
|
<!-- IE Out -->
|
||||||
<script>
|
<script>
|
||||||
if ( /*@cc_on!@*/ false || (!!window.MSInputMethodContext && !!document.documentMode)) window.location.href =
|
if (/*@cc_on!@*/ false || (!!window.MSInputMethodContext && !!document.documentMode))
|
||||||
"/upgrade-your-browser/index.html?referrer=" + encodeURIComponent(window.location.href);
|
window.location.href =
|
||||||
|
'https://support.dmeng.net/upgrade-your-browser.html?referrer=' +
|
||||||
|
encodeURIComponent(window.location.href);
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<!--加载动画-->
|
<!-- 主体内容 -->
|
||||||
<div id="loading-box">
|
<div id="app"></div>
|
||||||
<div class="loading-left-bg"></div>
|
<!-- noscript -->
|
||||||
<div class="loading-right-bg"></div>
|
<noscript>
|
||||||
<div class="spinner-box">
|
<div style="text-align: center">请开启 JavaScript</div>
|
||||||
<div class="loader">
|
</noscript>
|
||||||
<div class="inner one"></div>
|
<script type="module" src="/src/main.js"></script>
|
||||||
<div class="inner two"></div>
|
|
||||||
<div class="inner three"></div>
|
|
||||||
</div>
|
|
||||||
<div class="loading-word">
|
|
||||||
<p class="loading-title">無名の主页</p>加载中
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--加载动画结束-->
|
|
||||||
<section id="section" class="section">
|
|
||||||
<main id="main" class="main">
|
|
||||||
<div class="container" id="container">
|
|
||||||
<div class="row" id="row">
|
|
||||||
<div class="col left">
|
|
||||||
<!--基本信息-->
|
|
||||||
<div class="main-left">
|
|
||||||
<!--Logo-->
|
|
||||||
<div class="main-img">
|
|
||||||
<img src="./img/logo.png" alt="img">
|
|
||||||
<div class="img-title">
|
|
||||||
<span class="img-title">imsyy</span>
|
|
||||||
<span class="img-text">.top</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--介绍信息-->
|
|
||||||
<div class="message cards" id="switchmore">
|
|
||||||
<div class="des" id="des"><i class="iconfont icon-yinhao-copy-copy"></i>
|
|
||||||
<p class="des-title"><span id="change">Hello World !</span><br /><span
|
|
||||||
id="change1">一个建立于 21 世纪的小站,存活于互联网的边缘</span></p>
|
|
||||||
<i class="iconfont icon-yinhao-copy"></i>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--社交链接-->
|
|
||||||
<div class="social" id="social">
|
|
||||||
<a href="https://github.com/imsyy" class="link" id="github" target="_blank">
|
|
||||||
<i class="iconfont icon-github"></i>
|
|
||||||
</a>
|
|
||||||
<a href="http://wpa.qq.com/msgrd?v=3&uin=1539250352&site=qq&menu=yes" class="link"
|
|
||||||
id="qq" target="_blank">
|
|
||||||
<i class="iconfont icon-QQ"></i>
|
|
||||||
</a>
|
|
||||||
<a href="mailto:one@imsyy.top" class="link" id="email">
|
|
||||||
<i class="iconfont icon-youxiang"></i>
|
|
||||||
</a>
|
|
||||||
<a href="https://t.me/bottom_user" class="link" id="telegram" target="_blank">
|
|
||||||
<i class="iconfont icon-telegram"></i>
|
|
||||||
</a>
|
|
||||||
<a href="https://twitter.com/iimmsyy" class="link" id="twitter" target="_blank">
|
|
||||||
<i class="iconfont icon-twitter"></i>
|
|
||||||
</a>
|
|
||||||
<a id="link-text">通过这里联系我</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--第二屏 Logo-->
|
|
||||||
<div class="logo cards" style="display: none" id="changemore">
|
|
||||||
<a class="logo-text">imsyy.top</a>
|
|
||||||
</div>
|
|
||||||
<div class="col right">
|
|
||||||
<div class="main-right">
|
|
||||||
<!--功能区-->
|
|
||||||
<div class="row rightone" id="rightone">
|
|
||||||
<div class="col hitokotos">
|
|
||||||
<!--一言-->
|
|
||||||
<div class="hitokoto cards" id="hitokoto">
|
|
||||||
<!--切换音乐-->
|
|
||||||
<div class="open-music fixed-top" id="open-music">
|
|
||||||
<i class="iconfont icon-music"></i>
|
|
||||||
<span> 打开音乐播放器</span>
|
|
||||||
</div>
|
|
||||||
<!--切换音乐结束-->
|
|
||||||
<div class="hitokoto-all">
|
|
||||||
<div class="hitokoto-text"><span id="hitokoto_text">每一个人都应该明确自己的方向和位置</span>
|
|
||||||
</div>
|
|
||||||
<div class="hitokoto-from">-「 <span id="from_text">無名</span> 」
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--音乐-->
|
|
||||||
<div class="music cards" id="music">
|
|
||||||
<div class="music-all">
|
|
||||||
<div class="music-button">
|
|
||||||
<div id="music-open">音乐列表</div>
|
|
||||||
<div id="music-close">回到一言</div>
|
|
||||||
</div>
|
|
||||||
<div class="music-control">
|
|
||||||
<i class="iconfont icon-next-one-copy" id="last"></i>
|
|
||||||
<div id="play">
|
|
||||||
<i class="iconfont icon-play"></i>
|
|
||||||
</div>
|
|
||||||
<i class="iconfont icon-next-one" id="next"></i>
|
|
||||||
</div>
|
|
||||||
<div class="music-text">
|
|
||||||
<span id="music-name">未播放音乐</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col times">
|
|
||||||
<!--时间-->
|
|
||||||
<div class="time cards">
|
|
||||||
<div class="timeshow" id="time"></div>
|
|
||||||
<div class="weather">
|
|
||||||
<span id="city_text">天气</span> <span
|
|
||||||
id="wea_text">加载失败</span> <span id="tem_night">*</span>°C~<span
|
|
||||||
id="tem_day">*</span>°C <span id="win_text">风向</span><span
|
|
||||||
id="win_speed">*</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--分隔线-->
|
|
||||||
<div class="line">
|
|
||||||
<i class="iconfont icon-link"></i>
|
|
||||||
<span class="line-text">网站列表</span>
|
|
||||||
</div>
|
|
||||||
<!--网站链接-->
|
|
||||||
<div class="link">
|
|
||||||
<!--第一组-->
|
|
||||||
<div class="row">
|
|
||||||
<div class="col">
|
|
||||||
<a href="https://blog.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<i class="iconfont icon-blog-solid"></i>
|
|
||||||
<span class="link-name">博客</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="col 2">
|
|
||||||
<a href="https://drive.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<i class="iconfont icon-cloud"></i>
|
|
||||||
<span class="link-name">网盘</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<a href="https://music.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<i class="iconfont icon-music-list"></i>
|
|
||||||
<span class="link-name">音乐</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--第二组-->
|
|
||||||
<div class="row" style="margin-top: 1.5rem;">
|
|
||||||
<div class="col">
|
|
||||||
<a href="https://lab.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<i class="iconfont icon-lab"></i>
|
|
||||||
<span class="link-name">实验室</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="col 2">
|
|
||||||
<a href="https://web.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<i class="iconfont icon-navigation1"></i>
|
|
||||||
<span class="link-name">网址导航</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<a href="https://photo.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<i class="iconfont icon-photo"></i>
|
|
||||||
<span class="link-name">相册</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--展开菜单按钮-->
|
|
||||||
<div class="menu" id="switchmenu">
|
|
||||||
<a class="munu-button cards" id="menu"><i class="iconfont icon-bars"></i></a>
|
|
||||||
</div>
|
|
||||||
<!--更多内容-->
|
|
||||||
<div class="more" id="more">
|
|
||||||
<!--关闭按钮-->
|
|
||||||
<div class="close fixed-top" id="close">
|
|
||||||
<i class="iconfont icon-close"></i>
|
|
||||||
</div>
|
|
||||||
<div class="line" style="margin-top: 1rem;">
|
|
||||||
<i class="iconfont icon-right-copy"></i>
|
|
||||||
<span class="line-text">时间胶囊</span>
|
|
||||||
<i class="iconfont icon-right"></i>
|
|
||||||
</div>
|
|
||||||
<div class="date" id="date">
|
|
||||||
<div class="item" id="dayProgress">
|
|
||||||
<div class="date-text" style="margin-top: 0rem;">今日已经度过了 <span></span> 小时</div>
|
|
||||||
<div class="progress">
|
|
||||||
<div class="progress-bar"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="item" id="weekProgress">
|
|
||||||
<div class="date-text">本周已经度过了 <span></span> 天</div>
|
|
||||||
<div class="progress">
|
|
||||||
<div class="progress-bar"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="item" id="monthProgress">
|
|
||||||
<div class="date-text">本月已经度过了 <span></span> 天</div>
|
|
||||||
<div class="progress">
|
|
||||||
<div class="progress-bar"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="item" id="yearProgress">
|
|
||||||
<div class="date-text">今年已经度过了 <span></span> 个月</div>
|
|
||||||
<div class="progress">
|
|
||||||
<div class="progress-bar"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="line">
|
|
||||||
<i class="iconfont icon-right-copy"></i>
|
|
||||||
<span class="line-text">杂七杂八</span>
|
|
||||||
<i class="iconfont icon-right"></i>
|
|
||||||
</div>
|
|
||||||
<!--网站链接-->
|
|
||||||
<div class="row">
|
|
||||||
<div class="col">
|
|
||||||
<a href="https://status.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<span class="link-name">站点监测</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="col 2">
|
|
||||||
<a href="https://player.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<span class="link-name">播放器</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<a href="https://write.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<span class="link-name">编辑器</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row" style="margin-top: 1.5rem;">
|
|
||||||
<div class="col">
|
|
||||||
<a href="https://img.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<span class="link-name">图片站</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="col 2">
|
|
||||||
<a href="https://share.imsyy.top/" target="_blank">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<span class="link-name">文件库</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="col">
|
|
||||||
<a id="openmore">
|
|
||||||
<div class="link-card cards">
|
|
||||||
<span class="link-name">更多</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--更多页面-->
|
|
||||||
<div class="box" id="box" style="display: none">
|
|
||||||
<div class="box-wrapper">
|
|
||||||
<!--关闭按钮-->
|
|
||||||
<div class="closebox fixed-top" id="closemore">
|
|
||||||
<i class="iconfont icon-close"></i>
|
|
||||||
</div>
|
|
||||||
<!--更新日志-->
|
|
||||||
<div class="box-left">
|
|
||||||
<div class="img-title">
|
|
||||||
<span class="img-title">imsyy</span>
|
|
||||||
<span class="img-text">.top</span>
|
|
||||||
<span class="img-text"> v 1.5</span>
|
|
||||||
<a href="https://github.com/imsyy/home" target="_blank"><i
|
|
||||||
class="iconfont icon-github1"></i></a>
|
|
||||||
</div>
|
|
||||||
<div class="upnote">
|
|
||||||
<span class="uptext"><i class="iconfont icon-plus"></i> 新增音乐播放器</span>
|
|
||||||
<span class="uptext"><i class="iconfont icon-plus"></i> 修复时间胶囊( 时光进度条 )</span>
|
|
||||||
<span class="uptext"><i class="iconfont icon-plus"></i> 隐藏页面新增全屏弹窗</span>
|
|
||||||
<span class="uptext"><i class="iconfont icon-plus"></i> 新增动态跟随鼠标样式</span>
|
|
||||||
<span class="uptext"><i class="iconfont icon-wrench-fill"></i> 时光胶囊显示错误</span>
|
|
||||||
<span class="uptext"><i class="iconfont icon-wrench-fill"></i> 移动端动画及细节</span>
|
|
||||||
<span class="uptext"><i class="iconfont icon-wrench-fill"></i> 图标由 Fontawesome 改为
|
|
||||||
Iconfont</span>
|
|
||||||
<span class="uptext"><i class="iconfont icon-undo"></i> <a href="./old/"
|
|
||||||
style="color:#efefef">点击此处返回旧版站点</a></span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="box-right">
|
|
||||||
<div id="aplayer"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</main>
|
|
||||||
<!-- 版权信息 -->
|
|
||||||
<footer id="footer" class="fixed-bottom footer">
|
|
||||||
<div class="power" id="lrc">Copyright © 2020
|
|
||||||
<script>
|
|
||||||
document.write(' - ' + (new Date()).getFullYear())
|
|
||||||
</script> <a href="https://imsyy.top">無名</a> &
|
|
||||||
<!-- 以下信息请不要修改哦 -->
|
|
||||||
Made by <a href="https://github.com/imsyy/home" target="_blank">imsyy</a>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
</section>
|
|
||||||
<!-- JS -->
|
|
||||||
<script type="text/javascript" src="./js/main.js"></script>
|
|
||||||
<script type="text/javascript" src="./js/time.js"></script>
|
|
||||||
<script type="text/javascript" src="./js/cursor.js"></script>
|
|
||||||
<script type="text/javascript" src="./js/lantern.js"></script>
|
|
||||||
<script type="text/javascript" src="./js/music.js"></script>
|
|
||||||
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.1.3/js/bootstrap.min.js"></script>
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
96
js/cursor.js
@ -1,96 +0,0 @@
|
|||||||
var CURSOR;
|
|
||||||
|
|
||||||
Math.lerp = (a, b, n) => (1 - n) * a + n * b;
|
|
||||||
|
|
||||||
const getStyle = (el, attr) => {
|
|
||||||
try {
|
|
||||||
return window.getComputedStyle ?
|
|
||||||
window.getComputedStyle(el)[attr] :
|
|
||||||
el.currentStyle[attr];
|
|
||||||
} catch (e) {}
|
|
||||||
return "";
|
|
||||||
};
|
|
||||||
|
|
||||||
class Cursor {
|
|
||||||
constructor() {
|
|
||||||
this.pos = {
|
|
||||||
curr: null,
|
|
||||||
prev: null
|
|
||||||
};
|
|
||||||
this.pt = [];
|
|
||||||
this.create();
|
|
||||||
this.init();
|
|
||||||
this.render();
|
|
||||||
}
|
|
||||||
|
|
||||||
move(left, top) {
|
|
||||||
this.cursor.style["left"] = `${left}px`;
|
|
||||||
this.cursor.style["top"] = `${top}px`;
|
|
||||||
}
|
|
||||||
|
|
||||||
create() {
|
|
||||||
if (!this.cursor) {
|
|
||||||
this.cursor = document.createElement("div");
|
|
||||||
this.cursor.id = "cursor";
|
|
||||||
this.cursor.classList.add("hidden");
|
|
||||||
document.body.append(this.cursor);
|
|
||||||
}
|
|
||||||
|
|
||||||
var el = document.getElementsByTagName('*');
|
|
||||||
for (let i = 0; i < el.length; i++)
|
|
||||||
if (getStyle(el[i], "cursor") == "pointer")
|
|
||||||
this.pt.push(el[i].outerHTML);
|
|
||||||
|
|
||||||
document.body.appendChild((this.scr = document.createElement("style")));
|
|
||||||
this.scr.innerHTML =
|
|
||||||
`* {cursor: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8' width='8px' height='8px'><circle cx='4' cy='4' r='4' opacity='.5'/></svg>") 4 4, auto}`;
|
|
||||||
}
|
|
||||||
|
|
||||||
refresh() {
|
|
||||||
this.scr.remove();
|
|
||||||
this.cursor.classList.remove("hover");
|
|
||||||
this.cursor.classList.remove("active");
|
|
||||||
this.pos = {
|
|
||||||
curr: null,
|
|
||||||
prev: null
|
|
||||||
};
|
|
||||||
this.pt = [];
|
|
||||||
|
|
||||||
this.create();
|
|
||||||
this.init();
|
|
||||||
this.render();
|
|
||||||
}
|
|
||||||
|
|
||||||
init() {
|
|
||||||
document.onmouseover = e => this.pt.includes(e.target.outerHTML) && this.cursor.classList.add("hover");
|
|
||||||
document.onmouseout = e => this.pt.includes(e.target.outerHTML) && this.cursor.classList.remove("hover");
|
|
||||||
document.onmousemove = e => {
|
|
||||||
(this.pos.curr == null) && this.move(e.clientX - 8, e.clientY - 8);
|
|
||||||
this.pos.curr = {
|
|
||||||
x: e.clientX - 8,
|
|
||||||
y: e.clientY - 8
|
|
||||||
};
|
|
||||||
this.cursor.classList.remove("hidden");
|
|
||||||
};
|
|
||||||
document.onmouseenter = e => this.cursor.classList.remove("hidden");
|
|
||||||
document.onmouseleave = e => this.cursor.classList.add("hidden");
|
|
||||||
document.onmousedown = e => this.cursor.classList.add("active");
|
|
||||||
document.onmouseup = e => this.cursor.classList.remove("active");
|
|
||||||
}
|
|
||||||
|
|
||||||
render() {
|
|
||||||
if (this.pos.prev) {
|
|
||||||
this.pos.prev.x = Math.lerp(this.pos.prev.x, this.pos.curr.x, 0.45);
|
|
||||||
this.pos.prev.y = Math.lerp(this.pos.prev.y, this.pos.curr.y, 0.45);
|
|
||||||
this.move(this.pos.prev.x, this.pos.prev.y);
|
|
||||||
} else {
|
|
||||||
this.pos.prev = this.pos.curr;
|
|
||||||
}
|
|
||||||
requestAnimationFrame(() => this.render());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
(() => {
|
|
||||||
CURSOR = new Cursor();
|
|
||||||
// 需要重新获取列表时,使用 CURSOR.refresh()
|
|
||||||
})();
|
|
@ -1,21 +0,0 @@
|
|||||||
/*!
|
|
||||||
* china-lantern v1.6.0
|
|
||||||
* (c) 2020-2021 fz6m
|
|
||||||
* Released under the MIT License.
|
|
||||||
*/
|
|
||||||
! function (t) {
|
|
||||||
"function" == typeof define && define.amd ? define(t) : t()
|
|
||||||
}((function () {
|
|
||||||
"use strict";
|
|
||||||
! function (t, e) {
|
|
||||||
void 0 === e && (e = {});
|
|
||||||
var n = e.insertAt;
|
|
||||||
if (t && "undefined" != typeof document) {
|
|
||||||
var r = document.head || document.getElementsByTagName("head")[0],
|
|
||||||
a = document.createElement("style");
|
|
||||||
a.type = "text/css", "top" === n && r.firstChild ? r.insertBefore(a, r.firstChild) : r.appendChild(a), a.styleSheet ? a.styleSheet.cssText = t : a.appendChild(document.createTextNode(t))
|
|
||||||
}
|
|
||||||
};
|
|
||||||
var t;
|
|
||||||
(t = document.createElement("div")).className = "j-china-lantern", t.innerHTML = '<div class="lantern__warpper"><div class="lantern__box"><div class="lantern__line"></div><div class="lantern__circle"><div class="lantern__ellipse"><div class="lantern__text">新</div></div></div><div class="lantern__tail"><div class="lantern__rect"></div><div class="lantern__junction"></div></div></div></div><div class="lantern__warpper lantern__secondary"><div class="lantern__box"><div class="lantern__line"></div><div class="lantern__circle"><div class="lantern__ellipse"><div class="lantern__text">年</div></div></div><div class="lantern__tail"><div class="lantern__rect"></div><div class="lantern__junction"></div></div></div></div>', document.body.appendChild(t)
|
|
||||||
}));
|
|
332
js/main.js
@ -1,332 +0,0 @@
|
|||||||
//弹窗样式
|
|
||||||
iziToast.settings({
|
|
||||||
timeout: 10000,
|
|
||||||
//icon: 'Fontawesome',
|
|
||||||
closeOnEscape: 'true',
|
|
||||||
position: 'topLeft',
|
|
||||||
transitionIn: 'bounceInRight',
|
|
||||||
transitionOut: 'fadeOutLeft',
|
|
||||||
displayMode: 'replace',
|
|
||||||
layout: '2',
|
|
||||||
titleColor: '#efefef',
|
|
||||||
messageColor: '#efefef',
|
|
||||||
iconColor: '#efefef',
|
|
||||||
});
|
|
||||||
|
|
||||||
//控制台输出
|
|
||||||
var styleTitle1 = `
|
|
||||||
font-size: 20px;
|
|
||||||
font-weight: 600;
|
|
||||||
color: rgb(244,167,89);
|
|
||||||
`
|
|
||||||
var styleTitle2 = `
|
|
||||||
font-style: oblique;
|
|
||||||
font-size:14px;
|
|
||||||
color: rgb(244,167,89);
|
|
||||||
font-weight: 400;
|
|
||||||
`
|
|
||||||
var styleContent = `
|
|
||||||
color: rgb(30,152,255);
|
|
||||||
`
|
|
||||||
var title1 = '無名の主页'
|
|
||||||
var title2 = 'imsyy.top'
|
|
||||||
var content = `
|
|
||||||
版 本 号:1.5.0
|
|
||||||
更新日期:2022-01-16 14:38:34
|
|
||||||
|
|
||||||
更新说明:
|
|
||||||
1. 新增 音乐播放器
|
|
||||||
2. 新增 动态跟随鼠标样式
|
|
||||||
3. 修复 部分控件无法点击
|
|
||||||
4. 优化 移动端动画及细节
|
|
||||||
5. 优化 页面加载缓慢
|
|
||||||
6. 修复 时光胶囊显示错误
|
|
||||||
|
|
||||||
主页: https://imsyy.top
|
|
||||||
Github: https://github.com/imsyy/home
|
|
||||||
`
|
|
||||||
console.log(`%c${title1} %c${title2}
|
|
||||||
%c${content}`, styleTitle1, styleTitle2, styleContent)
|
|
||||||
|
|
||||||
//获取一言
|
|
||||||
fetch('https://v1.hitokoto.cn?max_length=24')
|
|
||||||
.then(response => response.json())
|
|
||||||
.then(data => {
|
|
||||||
const hitokoto = document.getElementById('hitokoto_text')
|
|
||||||
const from = document.getElementById('from_text')
|
|
||||||
hitokoto.innerText = data.hitokoto
|
|
||||||
from.innerText = data.from
|
|
||||||
})
|
|
||||||
.catch(console.error)
|
|
||||||
|
|
||||||
//获取天气
|
|
||||||
fetch('https://www.tianqiapi.com/free/day?appid=43986679&appsecret=TksqGZT7&unescape=1')
|
|
||||||
.then(response => response.json())
|
|
||||||
.then(data => {
|
|
||||||
const wea = document.getElementById('wea_text')
|
|
||||||
const city = document.getElementById('city_text')
|
|
||||||
const tem_night = document.getElementById('tem_night')
|
|
||||||
const tem_day = document.getElementById('tem_day')
|
|
||||||
const win = document.getElementById('win_text')
|
|
||||||
const win_speed = document.getElementById('win_speed')
|
|
||||||
wea.innerText = data.wea
|
|
||||||
city.innerText = data.city
|
|
||||||
tem_night.innerText = data.tem_night
|
|
||||||
tem_day.innerText = data.tem_day
|
|
||||||
win.innerText = data.win
|
|
||||||
win_speed.innerText = data.win_speed
|
|
||||||
})
|
|
||||||
.catch(console.error)
|
|
||||||
|
|
||||||
//获取时间
|
|
||||||
var t = null;
|
|
||||||
t = setTimeout(time, 1000);
|
|
||||||
|
|
||||||
function time() {
|
|
||||||
clearTimeout(t);
|
|
||||||
dt = new Date();
|
|
||||||
var y = dt.getYear() + 1900;
|
|
||||||
var mm = dt.getMonth() + 1;
|
|
||||||
var d = dt.getDate();
|
|
||||||
var weekday = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
|
|
||||||
var day = dt.getDay();
|
|
||||||
var h = dt.getHours();
|
|
||||||
var m = dt.getMinutes();
|
|
||||||
var s = dt.getSeconds();
|
|
||||||
if (h < 10) {
|
|
||||||
h = "0" + h;
|
|
||||||
}
|
|
||||||
if (m < 10) {
|
|
||||||
m = "0" + m;
|
|
||||||
}
|
|
||||||
if (s < 10) {
|
|
||||||
s = "0" + s;
|
|
||||||
}
|
|
||||||
document.getElementById("time").innerHTML = y + " 年 " + mm + " 月 " + d + " 日 " + "<span class='weekday'>" + weekday[day] + "</span><br>" + "<span class='time-text'>" + h + ":" + m + ":" + s + "</span>";
|
|
||||||
t = setTimeout(time, 1000);
|
|
||||||
}
|
|
||||||
|
|
||||||
//必应壁纸
|
|
||||||
/*
|
|
||||||
var url = 'https://bird.ioliu.cn/v1/?url=https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=8';
|
|
||||||
var imgUrls = JSON.parse(sessionStorage.getItem("imgUrls"));
|
|
||||||
var index = sessionStorage.getItem("index");
|
|
||||||
var $section = $('#section');
|
|
||||||
if (imgUrls == null) {
|
|
||||||
imgUrls = new Array();
|
|
||||||
index = 0;
|
|
||||||
$.get(url, function (result) {
|
|
||||||
images = result.images;
|
|
||||||
for (let i = 0; i < images.length; i++) {
|
|
||||||
const item = images[i];
|
|
||||||
imgUrls.push(item.url);
|
|
||||||
}
|
|
||||||
var imgUrl = imgUrls[index];
|
|
||||||
var url = "https://www.bing.com" + imgUrl;
|
|
||||||
$section.css("background", "url('" + url + "') center center no-repeat #666");
|
|
||||||
$section.css("background-size", "cover");
|
|
||||||
sessionStorage.setItem("imgUrls", JSON.stringify(imgUrls));
|
|
||||||
sessionStorage.setItem("index", index);
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
if (index == 7)
|
|
||||||
index = 0;
|
|
||||||
else
|
|
||||||
index++;
|
|
||||||
var imgUrl = imgUrls[index];
|
|
||||||
var url = "https://www.bing.com" + imgUrl;
|
|
||||||
$section.css("background", "url('" + url + "') center center no-repeat #666");
|
|
||||||
$section.css("background-size", "cover");
|
|
||||||
sessionStorage.setItem("index", index);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
//临时更换图片 api
|
|
||||||
/*
|
|
||||||
var $section = $('#section');
|
|
||||||
var url = "https://api.ixiaowai.cn/gqapi/gqapi.php";
|
|
||||||
$section.css("background", "url('" + url + "') center center no-repeat #666");
|
|
||||||
$section.css("background-size", "cover");
|
|
||||||
*/
|
|
||||||
|
|
||||||
//加载动画
|
|
||||||
window.addEventListener('load', function () {
|
|
||||||
document.body.style.overflow = 'auto';
|
|
||||||
document.getElementById('loading-box').classList.add("loaded")
|
|
||||||
}, false)
|
|
||||||
|
|
||||||
//链接提示文字
|
|
||||||
$("#social").mouseover(function () {
|
|
||||||
$("#social").css({
|
|
||||||
"background": "rgb(0 0 0 / 25%)",
|
|
||||||
'border-radius': '6px',
|
|
||||||
"backdrop-filter": "blur(5px)"
|
|
||||||
});
|
|
||||||
$("#link-text").css({
|
|
||||||
"display": "block",
|
|
||||||
});
|
|
||||||
}).mouseout(function () {
|
|
||||||
$("#social").css({
|
|
||||||
"background": "none",
|
|
||||||
"border-radius": "6px",
|
|
||||||
"backdrop-filter": "none"
|
|
||||||
});
|
|
||||||
$("#link-text").css({
|
|
||||||
"display": "none"
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#github").mouseover(function () {
|
|
||||||
$("#link-text").html("去 Github 看看");
|
|
||||||
}).mouseout(function () {
|
|
||||||
$("#link-text").html("通过这里联系我");
|
|
||||||
});
|
|
||||||
$("#qq").mouseover(function () {
|
|
||||||
$("#link-text").html("有什么事吗");
|
|
||||||
}).mouseout(function () {
|
|
||||||
$("#link-text").html("通过这里联系我");
|
|
||||||
});
|
|
||||||
$("#email").mouseover(function () {
|
|
||||||
$("#link-text").html("来封 Email");
|
|
||||||
}).mouseout(function () {
|
|
||||||
$("#link-text").html("通过这里联系我");
|
|
||||||
});
|
|
||||||
$("#telegram").mouseover(function () {
|
|
||||||
$("#link-text").html("你懂的 ~");
|
|
||||||
}).mouseout(function () {
|
|
||||||
$("#link-text").html("通过这里联系我");
|
|
||||||
});
|
|
||||||
$("#twitter").mouseover(function () {
|
|
||||||
$("#link-text").html("你懂的 ~");
|
|
||||||
}).mouseout(function () {
|
|
||||||
$("#link-text").html("通过这里联系我");
|
|
||||||
});
|
|
||||||
|
|
||||||
//更多页面切换
|
|
||||||
var shoemore = false;
|
|
||||||
$('#switchmore').on('click', function () {
|
|
||||||
shoemore = !shoemore;
|
|
||||||
if (shoemore && $(document).width() >= 990) {
|
|
||||||
$('#container').attr('class', 'container mores');
|
|
||||||
$("#change").html("Oops !");
|
|
||||||
$("#change1").html("哎呀,这都被你发现了( 再点击一次可关闭 )");
|
|
||||||
} else {
|
|
||||||
$('#container').attr('class', 'container');
|
|
||||||
$("#change").html("Hello World !");
|
|
||||||
$("#change1").html("一个建立于 21 世纪的小站,存活于互联网的边缘");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
//更多页面关闭按钮
|
|
||||||
$('#close').on('click', function () {
|
|
||||||
$('#container').attr('class', 'container');
|
|
||||||
$("#change").html("Hello World !");
|
|
||||||
$("#change1").html("一个建立于 21 世纪的小站,存活于互联网的边缘");
|
|
||||||
});
|
|
||||||
|
|
||||||
//菜单栏切换
|
|
||||||
var switchmenu = false;
|
|
||||||
$('#switchmenu').on('click', function () {
|
|
||||||
switchmenu = !switchmenu;
|
|
||||||
if (switchmenu) {
|
|
||||||
$('#row').attr('class', 'row menus');
|
|
||||||
$("#menu").html("<i class='iconfont icon-times'></i>");
|
|
||||||
} else {
|
|
||||||
$('#row').attr('class', 'row');
|
|
||||||
$("#menu").html("<i class='iconfont icon-bars'>");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
//更多弹窗页面
|
|
||||||
$('#openmore').on('click', function () {
|
|
||||||
$('#box').css("display", "block");
|
|
||||||
$('#row').css("display", "none");
|
|
||||||
$('#more').css("cssText", "display:none !important");
|
|
||||||
});
|
|
||||||
$('#closemore').on('click', function () {
|
|
||||||
$('#box').css("display", "none");
|
|
||||||
$('#row').css("display", "flex");
|
|
||||||
$('#more').css("display", "flex");
|
|
||||||
});
|
|
||||||
|
|
||||||
//监听网页宽度
|
|
||||||
window.addEventListener('load', function () {
|
|
||||||
window.addEventListener('resize', function () {
|
|
||||||
//关闭移动端样式
|
|
||||||
if (window.innerWidth >= 600) {
|
|
||||||
$('#row').attr('class', 'row');
|
|
||||||
$("#menu").html("<i class='iconfont icon-bars'>");
|
|
||||||
//移除移动端切换功能区
|
|
||||||
$('#rightone').attr('class', 'row rightone');
|
|
||||||
}
|
|
||||||
|
|
||||||
if (window.innerWidth <= 990) {
|
|
||||||
//移动端隐藏更多页面
|
|
||||||
$('#container').attr('class', 'container');
|
|
||||||
$("#change").html("Hello World !");
|
|
||||||
$("#change1").html("一个建立于 21 世纪的小站,存活于互联网的边缘");
|
|
||||||
|
|
||||||
//移动端隐藏弹窗页面
|
|
||||||
$('#box').css("display", "none");
|
|
||||||
$('#row').css("display", "flex");
|
|
||||||
$('#more').css("display", "flex");
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
/*
|
|
||||||
document.getElementById("theme-toggle").addEventListener("click", () => {
|
|
||||||
document.body.className.includes("dark") ? (document.body.classList.remove('dark'),
|
|
||||||
localStorage.setItem("pref-theme", 'light')) : (document.body.classList.add('dark'),
|
|
||||||
localStorage.setItem("pref-theme", 'dark'))
|
|
||||||
})
|
|
||||||
*/
|
|
||||||
//移动端切换功能区
|
|
||||||
var changemore = false;
|
|
||||||
$('#changemore').on('click', function () {
|
|
||||||
changemore = !changemore;
|
|
||||||
if (changemore) {
|
|
||||||
$('#rightone').attr('class', 'row menus mobile');
|
|
||||||
} else {
|
|
||||||
$('#rightone').attr('class', 'row menus');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
//更多页面显示关闭按钮
|
|
||||||
$("#more").hover(function () {
|
|
||||||
$('#close').css("display", "block");
|
|
||||||
}, function () {
|
|
||||||
$('#close').css("display", "none");
|
|
||||||
})
|
|
||||||
|
|
||||||
//屏蔽右键
|
|
||||||
document.oncontextmenu = function () {
|
|
||||||
iziToast.info({
|
|
||||||
//icon: 'fad fa-do-not-enter',
|
|
||||||
iconUrl: './img/warn.png',
|
|
||||||
title: '温馨提醒',
|
|
||||||
message: '为了浏览体验,本站禁用右键'
|
|
||||||
});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
//自动变灰
|
|
||||||
var myDate = new Date;
|
|
||||||
var mon = myDate.getMonth() + 1;
|
|
||||||
var date = myDate.getDate();
|
|
||||||
var days = ['4.4', '5.12', '7.7', '9.9', '9.18', '12.13'];
|
|
||||||
for (var day of days) {
|
|
||||||
var d = day.split('.');
|
|
||||||
if (mon == d[0] && date == d[1]) {
|
|
||||||
document.write(
|
|
||||||
'<style>html{-webkit-filter:grayscale(100%);-moz-filter:grayscale(100%);-ms-filter:grayscale(100%);-o-filter:grayscale(100%);filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);_filter:none}</style>'
|
|
||||||
)
|
|
||||||
$("#change").html("Silence in silence");
|
|
||||||
$("#change1").html("今天是国家纪念日,全站已切换为黑白模式");
|
|
||||||
iziToast.info({
|
|
||||||
timeout: 14000,
|
|
||||||
//icon: 'fad fa-candle-holder',
|
|
||||||
iconUrl: './img/candle.png',
|
|
||||||
title: '今天是国家纪念日',
|
|
||||||
message: '历史不会忘记,人民永远铭记!'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
428
js/music.js
@ -1,428 +0,0 @@
|
|||||||
const ap = new APlayer({
|
|
||||||
container: document.getElementById('aplayer'),
|
|
||||||
order: 'random',
|
|
||||||
preload: 'auto',
|
|
||||||
listMaxHeight: '336px',
|
|
||||||
volume: 0.3,
|
|
||||||
mutex: true,
|
|
||||||
lrcType: 3,
|
|
||||||
audio: [{
|
|
||||||
name: "夜曲",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E5%A4%9C%E6%9B%B2.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M0000024bjiL2aocxT_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E5%A4%9C%E6%9B%B2.lrc",
|
|
||||||
theme: "#171513"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "断了的弦",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E6%96%AD%E4%BA%86%E7%9A%84%E5%BC%A6.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M000001BGzMs369FzU_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E6%96%AD%E4%BA%86%E7%9A%84%E5%BC%A6.lrc",
|
|
||||||
theme: "#0057a7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "花海",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E8%8A%B1%E6%B5%B7.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M000002Neh8l0uciQZ_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E8%8A%B1%E6%B5%B7.lrc",
|
|
||||||
theme: "#954a17"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "发如雪",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E5%8F%91%E5%A6%82%E9%9B%AA.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M0000024bjiL2aocxT_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E5%8F%91%E5%A6%82%E9%9B%AA.lrc",
|
|
||||||
theme: "#171513"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "稻香",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E7%A8%BB%E9%A6%99.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000002Neh8l0uciQZ_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E7%A8%BB%E9%A6%99.lrc",
|
|
||||||
theme: "#e3ae55"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "七里香",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E4%B8%83%E9%87%8C%E9%A6%99.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000003DFRzD192KKD_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E4%B8%83%E9%87%8C%E9%A6%99.lrc",
|
|
||||||
theme: "#395732"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "晴天",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E6%99%B4%E5%A4%A9.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000000MkMni19ClKG_3.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E6%99%B4%E5%A4%A9.lrc",
|
|
||||||
theme: "#08362e"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "以父之名",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E4%BB%A5%E7%88%B6%E4%B9%8B%E5%90%8D.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000000MkMni19ClKG_3.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E4%BB%A5%E7%88%B6%E4%B9%8B%E5%90%8D.lrc",
|
|
||||||
theme: "#08362e"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "本草纲目",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E6%9C%AC%E8%8D%89%E7%BA%B2%E7%9B%AE.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000002jLGWe16Tf1H_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E6%9C%AC%E8%8D%89%E7%BA%B2%E7%9B%AE.lrc",
|
|
||||||
theme: "#171513"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "一路向北",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E4%B8%80%E8%B7%AF%E5%90%91%E5%8C%97.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M000002MAeob3zLXwZ_2.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E4%B8%80%E8%B7%AF%E5%90%91%E5%8C%97.lrc",
|
|
||||||
theme: "#383a37"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "半岛铁盒",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E5%8D%8A%E5%B2%9B%E9%93%81%E7%9B%92.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M000004MGitN0zEHpb_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E5%8D%8A%E5%B2%9B%E9%93%81%E7%9B%92.lrc",
|
|
||||||
theme: "#f0a059"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "简单爱",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E7%AE%80%E5%8D%95%E7%88%B1.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000000I5jJB3blWeN_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E7%AE%80%E5%8D%95%E7%88%B1.lrc",
|
|
||||||
theme: "#c21c0f"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "青花瓷",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E9%9D%92%E8%8A%B1%E7%93%B7.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000002eFUFm2XYZ7z_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E9%9D%92%E8%8A%B1%E7%93%B7.lrc",
|
|
||||||
theme: "#000000"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "烟花易冷",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E7%83%9F%E8%8A%B1%E6%98%93%E5%86%B7.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000000bviBl4FjTpO_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E7%83%9F%E8%8A%B1%E6%98%93%E5%86%B7.lrc",
|
|
||||||
theme: "#86b5bb"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "给我一首歌的时间",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E7%BB%99%E6%88%91%E4%B8%80%E9%A6%96%E6%AD%8C%E7%9A%84%E6%97%B6%E9%97%B4.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000002Neh8l0uciQZ_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E7%BB%99%E6%88%91%E4%B8%80%E9%A6%96%E6%AD%8C%E7%9A%84%E6%97%B6%E9%97%B4.lrc",
|
|
||||||
theme: "#e3ae55"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "霍元甲",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E9%9C%8D%E5%85%83%E7%94%B2.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M000000OixvE1YjIqd_3.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E9%9C%8D%E5%85%83%E7%94%B2.lrc",
|
|
||||||
theme: "#295249"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "兰亭序",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E5%85%B0%E4%BA%AD%E5%BA%8F.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M000002Neh8l0uciQZ_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E5%85%B0%E4%BA%AD%E5%BA%8F.lrc",
|
|
||||||
theme: "#e3ae55"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "枫",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E6%9E%AB.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M0000024bjiL2aocxT_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E6%9E%AB.lrc",
|
|
||||||
theme: "#171513"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "断了的弦",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E6%96%AD%E4%BA%86%E7%9A%84%E5%BC%A6.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M000001BGzMs369FzU_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E6%96%AD%E4%BA%86%E7%9A%84%E5%BC%A6.lrc",
|
|
||||||
theme: "#0057a7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "天涯过客",
|
|
||||||
artist: "周杰伦",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E5%A4%A9%E6%B6%AF%E8%BF%87%E5%AE%A2.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M000001uqejs3d6EID_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6-%E5%A4%A9%E6%B6%AF%E8%BF%87%E5%AE%A2.lrc",
|
|
||||||
theme: "#b88e16"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "千里之外",
|
|
||||||
artist: "周杰伦 / 费玉清",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6%26%E8%B4%B9%E7%8E%89%E6%B8%85-%E5%8D%83%E9%87%8C%E4%B9%8B%E5%A4%96.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000002jLGWe16Tf1H_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6%26%E8%B4%B9%E7%8E%89%E6%B8%85-%E5%8D%83%E9%87%8C%E4%B9%8B%E5%A4%96.lrc",
|
|
||||||
theme: "#171513"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "珊瑚海",
|
|
||||||
artist: "周杰伦 / 梁心颐",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E5%91%A8%E6%9D%B0%E4%BC%A6%26%E6%A2%81%E5%BF%83%E9%A2%90-%E7%8F%8A%E7%91%9A%E6%B5%B7.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M0000024bjiL2aocxT_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E5%91%A8%E6%9D%B0%E4%BC%A6%26%E6%A2%81%E5%BF%83%E9%A2%90-%E7%8F%8A%E7%91%9A%E6%B5%B7.lrc",
|
|
||||||
theme: "#181714"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "单车",
|
|
||||||
artist: "陈奕迅",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E9%99%88%E5%A5%95%E8%BF%85-%E5%8D%95%E8%BD%A6.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000004S8YQr3UmEbG_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E9%99%88%E5%A5%95%E8%BF%85-%E5%8D%95%E8%BD%A6.lrc",
|
|
||||||
theme: "#32201f"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "浮夸",
|
|
||||||
artist: "陈奕迅",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E9%99%88%E5%A5%95%E8%BF%85-%E6%B5%AE%E5%A4%B8.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000003J6fvc0bVJon_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E9%99%88%E5%A5%95%E8%BF%85-%E6%B5%AE%E5%A4%B8.lrc",
|
|
||||||
theme: "#040402"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "十年",
|
|
||||||
artist: "陈奕迅",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E9%99%88%E5%A5%95%E8%BF%85-%E5%8D%81%E5%B9%B4.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000003J6fvc0bVJon_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E9%99%88%E5%A5%95%E8%BF%85-%E5%8D%81%E5%B9%B4.lrc",
|
|
||||||
theme: "#040402"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "一丝不挂",
|
|
||||||
artist: "陈奕迅",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E9%99%88%E5%A5%95%E8%BF%85-%E4%B8%80%E4%B8%9D%E4%B8%8D%E6%8C%82.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000001sjRhH0wqa4Q_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E9%99%88%E5%A5%95%E8%BF%85-%E4%B8%80%E4%B8%9D%E4%B8%8D%E6%8C%82.lrc",
|
|
||||||
theme: "#0d0d0d"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "麻雀",
|
|
||||||
artist: "李荣浩",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E6%9D%8E%E8%8D%A3%E6%B5%A9-%E9%BA%BB%E9%9B%80.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000003P3ByD1n8nBK_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E6%9D%8E%E8%8D%A3%E6%B5%A9-%E9%BA%BB%E9%9B%80.lrc",
|
|
||||||
theme: "#849fbd"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "老街",
|
|
||||||
artist: "李荣浩",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E6%9D%8E%E8%8D%A3%E6%B5%A9-%E8%80%81%E8%A1%97.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000001LP8hk0a6pOp_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E6%9D%8E%E8%8D%A3%E6%B5%A9-%E8%80%81%E8%A1%97.lrc",
|
|
||||||
theme: "#e0d7bb"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "年少有为",
|
|
||||||
artist: "李荣浩",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E6%9D%8E%E8%8D%A3%E6%B5%A9-%E5%B9%B4%E5%B0%91%E6%9C%89%E4%B8%BA.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000000RLvtE1eDyOs_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E6%9D%8E%E8%8D%A3%E6%B5%A9-%E5%B9%B4%E5%B0%91%E6%9C%89%E4%B8%BA.lrc",
|
|
||||||
theme: "#d2ddd5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "爸爸妈妈",
|
|
||||||
artist: "李荣浩",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E6%9D%8E%E8%8D%A3%E6%B5%A9-%E7%88%B8%E7%88%B8%E5%A6%88%E5%A6%88.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000001fi1zG0EjU2u_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E6%9D%8E%E8%8D%A3%E6%B5%A9-%E7%88%B8%E7%88%B8%E5%A6%88%E5%A6%88.lrc",
|
|
||||||
theme: "#aec3ce"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "干杯",
|
|
||||||
artist: "五月天",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E4%BA%94%E6%9C%88%E5%A4%A9-%E5%B9%B2%E6%9D%AF.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000001fbipy4azgKM_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E4%BA%94%E6%9C%88%E5%A4%A9-%E5%B9%B2%E6%9D%AF.lrc",
|
|
||||||
theme: "#0f1e32"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "倔强",
|
|
||||||
artist: "五月天",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E4%BA%94%E6%9C%88%E5%A4%A9-%E5%80%94%E5%BC%BA.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M0000006MmDz4Hl2Ud_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E4%BA%94%E6%9C%88%E5%A4%A9-%E5%80%94%E5%BC%BA.lrc",
|
|
||||||
theme: "#b3dae1"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "你不是真正的快乐",
|
|
||||||
artist: "五月天",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E4%BA%94%E6%9C%88%E5%A4%A9-%E4%BD%A0%E4%B8%8D%E6%98%AF%E7%9C%9F%E6%AD%A3%E7%9A%84%E5%BF%AB%E4%B9%90.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M0000020I7sO0ayXhN_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E4%BA%94%E6%9C%88%E5%A4%A9-%E4%BD%A0%E4%B8%8D%E6%98%AF%E7%9C%9F%E6%AD%A3%E7%9A%84%E5%BF%AB%E4%B9%90.lrc",
|
|
||||||
theme: "#0a0708"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "派对动物",
|
|
||||||
artist: "五月天",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2F%E4%BA%94%E6%9C%88%E5%A4%A9-%E6%B4%BE%E5%AF%B9%E5%8A%A8%E7%89%A9.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000002fRO0N4FftzY_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2F%E4%BA%94%E6%9C%88%E5%A4%A9-%E6%B4%BE%E5%AF%B9%E5%8A%A8%E7%89%A9.lrc",
|
|
||||||
theme: "#d0e8f2"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Numb",
|
|
||||||
artist: "Linkin Park",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2FLinkin%20Park-Numb.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M000000C4MQU17Phga_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2FLinkin%20Park-Numb.lrc",
|
|
||||||
theme: "#0d0d0d"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "In The End",
|
|
||||||
artist: "Linkin Park",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2FLinkin%20Park-In%20The%20End.mp3",
|
|
||||||
cover: "https://y.qq.com/music/photo_new/T002R300x300M000004ImTxE1OkGqR_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2FLinkin%20Park-In%20The%20End.lrc",
|
|
||||||
theme: "#270408"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "All About Us",
|
|
||||||
artist: "He Is We / Owl City",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2FHe%20Is%20We%26Owl%20City-All%20About%20Us.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000004b2Efp2dEWlo_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2FHe%20Is%20We%26Owl%20City-All%20About%20Us.lrc",
|
|
||||||
theme: "#ee5a75"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "You're Not Alone",
|
|
||||||
artist: "Owl City / Britt Nicole",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2FOwl%20City%26Britt%20Nicole-You're%20Not%20Alone.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000002ke9Cq3KeWYj_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2FOwl%20City%26Britt%20Nicole-You're%20Not%20Alone.lrc",
|
|
||||||
theme: "#eff8fa"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Good Time",
|
|
||||||
artist: "Owl City / Carly Rae Jepsen",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2FOwl%20City%26Carly%20Rae%20Jepsen-Good%20Time.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000001mat8F3tAzsu_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2FOwl%20City%26Carly%20Rae%20Jepsen-Good%20Time.lrc",
|
|
||||||
theme: "#dd111c"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Unbelievable",
|
|
||||||
artist: "Owl City / Hanson",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2FOwl%20City%26Hanson-Unbelievable.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000004O8zk80vaqfl_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2FOwl%20City%26Hanson-Unbelievable.lrc",
|
|
||||||
theme: "#de7227"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Fireflies",
|
|
||||||
artist: "Owl City",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2FOwl%20City-Fireflies.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000002FEF7L03Cv7T_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2FOwl%20City-Fireflies.lrc",
|
|
||||||
theme: "#33658d"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Gold",
|
|
||||||
artist: "Owl City",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2FOwl%20City-Gold.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000001Y76KO1Vpg7b_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2FOwl%20City-Gold.lrc",
|
|
||||||
theme: "#94c1de"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "The Saltwater Room",
|
|
||||||
artist: "Owl City",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2FOwl%20City-The%20Saltwater%20Room.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M000002FEF7L03Cv7T_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2FOwl%20City-The%20Saltwater%20Room.lrc",
|
|
||||||
theme: "#33658d"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "When Can I See You Again?",
|
|
||||||
artist: "Owl City",
|
|
||||||
url: "https://s-sh-2127-music.oss.dogecdn.com/song%2FOwl%20City-When%20Can%20I%20See%20You%20Again%EF%BC%9F.mp3",
|
|
||||||
cover: "https://y.gtimg.cn/music/photo_new/T002R300x300M0000034UcqG3UwYdy_1.jpg?max_age=2592000",
|
|
||||||
lrc: "https://s-sh-2127-music.oss.dogecdn.com/lrc%2FOwl%20City-When%20Can%20I%20See%20You%20Again%EF%BC%9F.lrc",
|
|
||||||
theme: "#0e1c3a"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
});
|
|
||||||
|
|
||||||
/* 音乐通知及控制 */
|
|
||||||
ap.on('play', function () {
|
|
||||||
music = $(".aplayer-title").text() + $(".aplayer-author").text();
|
|
||||||
iziToast.info({
|
|
||||||
iconUrl: './img/play.png',
|
|
||||||
displayMode: 'replace',
|
|
||||||
title: '音乐通知',
|
|
||||||
message: '正在播放:' + ' ' + music
|
|
||||||
});
|
|
||||||
$("#play").html("<i class='iconfont icon-pause'>");
|
|
||||||
$("#music-name").html($(".aplayer-title").text() + $(".aplayer-author").text());
|
|
||||||
if ($(document).width() >= 990) {
|
|
||||||
window.lrc = setInterval(function () {
|
|
||||||
$("#lrc").html("<span class='lrc-show'><i class='iconfont icon-music'></i> " + $(".aplayer-lrc-current").text() + " <i class='iconfont icon-music'></i></span>");
|
|
||||||
}, 500);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
ap.on('pause', function () {
|
|
||||||
$("#play").html("<i class='iconfont icon-play'>");
|
|
||||||
clearInterval(window.lrc);
|
|
||||||
$("#lrc").html("Copyright © 2020-2022 <a href='https://imsyy.top'>無名</a> & Made by <a href='https://github.com/imsyy/home' target='_blank'>imsyy</a>");
|
|
||||||
});
|
|
||||||
|
|
||||||
/* 一言与音乐切换 */
|
|
||||||
$('#open-music').on('click', function () {
|
|
||||||
$('#hitokoto').css("display", "none");
|
|
||||||
$('#music').css("display", "flex");
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#hitokoto").hover(function () {
|
|
||||||
$('#open-music').css("display", "flex");
|
|
||||||
}, function () {
|
|
||||||
$('#open-music').css("display", "none");
|
|
||||||
})
|
|
||||||
|
|
||||||
$('#music-close').on('click', function () {
|
|
||||||
$('#music').css("display", "none");
|
|
||||||
$('#hitokoto').css("display", "flex");
|
|
||||||
});
|
|
||||||
|
|
||||||
/* 上下曲 */
|
|
||||||
$('#play').on('click', function () {
|
|
||||||
ap.toggle();
|
|
||||||
$("#music-name").html($(".aplayer-title").text() + $(".aplayer-author").text());
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#last').on('click', function () {
|
|
||||||
ap.skipBack();
|
|
||||||
$("#music-name").html($(".aplayer-title").text() + $(".aplayer-author").text());
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#next').on('click', function () {
|
|
||||||
ap.skipForward();
|
|
||||||
$("#music-name").html($(".aplayer-title").text() + $(".aplayer-author").text());
|
|
||||||
});
|
|
||||||
|
|
||||||
/* 打开音乐列表 */
|
|
||||||
$('#music-open').on('click', function () {
|
|
||||||
if ($(document).width() >= 990) {
|
|
||||||
$('#box').css("display", "block");
|
|
||||||
$('#row').css("display", "none");
|
|
||||||
$('#more').css("cssText", "display:none !important");
|
|
||||||
}
|
|
||||||
});
|
|
49
js/time.js
@ -1,49 +0,0 @@
|
|||||||
function init_life_time() {
|
|
||||||
function getAsideLifeTime() {
|
|
||||||
/* 当前时间戳 */
|
|
||||||
let nowDate = +new Date();
|
|
||||||
/* 今天开始时间戳 */
|
|
||||||
let todayStartDate = new Date(new Date().toLocaleDateString()).getTime();
|
|
||||||
/* 今天已经过去的时间 */
|
|
||||||
let todayPassHours = (nowDate - todayStartDate) / 1000 / 60 / 60;
|
|
||||||
/* 今天已经过去的时间比 */
|
|
||||||
let todayPassHoursPercent = (todayPassHours / 24) * 100;
|
|
||||||
$('#dayProgress .date-text span').html(parseInt(todayPassHours));
|
|
||||||
$('#dayProgress .progress .progress-bar').css('width', parseInt(todayPassHoursPercent) + '%');
|
|
||||||
$('#dayProgress .progress .progress-bar').html(parseInt(todayPassHoursPercent) + '%');
|
|
||||||
/* 当前周几 */
|
|
||||||
let weeks = {
|
|
||||||
0: 7,
|
|
||||||
1: 1,
|
|
||||||
2: 2,
|
|
||||||
3: 3,
|
|
||||||
4: 4,
|
|
||||||
5: 5,
|
|
||||||
6: 6
|
|
||||||
};
|
|
||||||
let weekDay = weeks[new Date().getDay()];
|
|
||||||
let weekDayPassPercent = (weekDay / 7) * 100;
|
|
||||||
$('#weekProgress .date-text span').html(weekDay);
|
|
||||||
$('#weekProgress .progress .progress-bar').css('width', parseInt(weekDayPassPercent) + '%');
|
|
||||||
$('#weekProgress .progress .progress-bar').html(parseInt(weekDayPassPercent) + '%');
|
|
||||||
/* 月 */
|
|
||||||
let year = new Date().getFullYear();
|
|
||||||
let date = new Date().getDate();
|
|
||||||
let month = new Date().getMonth() + 1;
|
|
||||||
let monthAll = new Date(year, month, 0).getDate();
|
|
||||||
let monthPassPercent = (date / monthAll) * 100;
|
|
||||||
$('#monthProgress .date-text span').html(date);
|
|
||||||
$('#monthProgress .progress .progress-bar').css('width', parseInt(monthPassPercent) + '%');
|
|
||||||
$('#monthProgress .progress .progress-bar').html(parseInt(monthPassPercent) + '%');
|
|
||||||
/* 年 */
|
|
||||||
let yearPass = (month / 12) * 100;
|
|
||||||
$('#yearProgress .date-text span').html(month);
|
|
||||||
$('#yearProgress .progress .progress-bar').css('width', parseInt(yearPass) + '%');
|
|
||||||
$('#yearProgress .progress .progress-bar').html(parseInt(yearPass) + '%');
|
|
||||||
}
|
|
||||||
getAsideLifeTime();
|
|
||||||
setInterval(() => {
|
|
||||||
getAsideLifeTime();
|
|
||||||
}, 1000);
|
|
||||||
}
|
|
||||||
init_life_time()
|
|
@ -1,7 +0,0 @@
|
|||||||
@font-face {
|
|
||||||
font-family:'EngraversOldEnglishBT-Bold';
|
|
||||||
src: url('//cdn.webfont.youziku.com/webfonts/nomal/123918/33195/5d21f88af629d8080c5960eb.gif?r=110901002758');
|
|
||||||
src: url('//cdn.webfont.youziku.com/webfonts/nomal/123918/33195/5d21f88af629d8080c5960eb.gif?r=110901002758?#iefix') format('embedded-opentype'), url('//cdn.webfont.youziku.com/webfonts/nomal/123918/33195/5d21f88af629d8080c5960eb.png?r=110901002758') format('woff2'), url('//cdn.webfont.youziku.com/webfonts/nomal/123918/33195/5d21f88af629d8080c5960eb.bmp?r=110901002758') format('woff');
|
|
||||||
font-weight: normal;
|
|
||||||
font-style: normal;
|
|
||||||
}
|
|
@ -1,80 +0,0 @@
|
|||||||
@font-face {font-family: "iconfont";
|
|
||||||
src: url('//at.alicdn.com/t/font_1923666_2o4ez0t5t64.eot?t=1597068283360'); /* IE9 */
|
|
||||||
src: url('//at.alicdn.com/t/font_1923666_2o4ez0t5t64.eot?t=1597068283360#iefix') format('embedded-opentype'), /* IE6-IE8 */
|
|
||||||
url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAAygAAsAAAAAFQgAAAxSAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCFCgqaDJRUATYCJANECyQABCAFhG0HgUEbYRFRlFBWMtkX2DbsyRi24w5jw9hhxnUCAlAAAADABxRQQMEpHr7f739rH7nfTJMgXvFuFiLTIUHqj+ShUpJn/lr77RfzHZp+USCZJq2cvRVO2dvDMrRMSoQIoTE8bfPf3WHdTUElRIxqdENlsrI50M1eRLCA/W/B1tBmLMtYpK6PY9Ftmg/89wABgM3/fz9X/0OsiUV9mIZCjV+n92OubQlLhEZdSKpveNsa0UITa0TrkVR2SCjgNkZ16IWeTqDTrC2hq6fXdyip0BWBea85VVEyUaNURIf28qbAYRkPfQBm2tM7eBDw3nv8+Cci2klqpp/p5tMTA+3/9LKVdEiqIH8C2XBNYLWRsQ0prPipsPIjKEOOjehcSvEWMKpI/szmZ9Zh2YaRM5/0+Pqy9RA/PWuwk65eGNW1ZhAgHXr0K+jUq02xrhUaWZfuw/jliQal7CZDf4z2Qz9ZeXTwM/Lo4WfiqiGjSh+gQZVOQBuq9ALaoZCFDlQpgGUoDAWbqFIBe1AA3IDCFPAJVboAX1GlG/Afcqj904Lw3JQDjoNFyBZUBhGq95AuvvGU8TW0FBXy5IjZYtFZRkpZneqxeFItFkelaFm7K2a7RzO95JVWibZb6+VCrDvZ7Gkz1lWP+NLJKik9USlnioT25YerZaypGsXMSR3SHkXg1Mmdij5ZwJQuucSm5Zi0x5vaHj9Mbx4vW0E/NQeg61H0cSB9bx533yVKurJR0QmkLaic6AgKgoO3d/rHz+Ye7XMNRVzqArpIVK4P1GggWRcqb6Ers4QieVtOb29Xy2yVvz9uJOjbolrKyoYjgd2+mrclSq1Ux+gZoTFAMjWzq6VUyNrayjrqoddPkktQsUbmTqELUVGX16QeSBk4ShBC2GjEMd1hxVGOteMD3/ZuDmYyiRGSLLCR9zqON/T5Ult72PnaY15TcKGoVGz7Qqiiaw95yduYHV5tRxzVTIMvpmCoOhntOzm67d7t3SyNxvRAxRBrjNmYajujx8RqHnHAp82gAsi6XPQudZBMrCbFB43pJrERbzdhW9BtBGypU02Q1q/Dr8ULV+jBAdBKGYQQlYvUUAsp0pMJyjYJSYrmy9AfaRqLi0ymsrYuWTemadVJtS3iqGO8wruRXDiCNwrfOshkEik6pR1oyxFHw9GSloYt7d4KpmmqSnHOt07vs6ylg7Fc3UafdIxMmKJucSCAsLYHs1X0uUpMRhx07mZ3GoWosiuEELYeZqsYWkK4jwxAO4gYknTUsAxHfUnRtg4mSpoCDXsDJyNbSsFwMWZWgAojUAQrQcViDFKfhDXUYOKwUHWLV8cuh12EA3EVhqqdxdJc9sRwI0DpHQ2AjhEE3aGGECqL/YopWAdNkXsjcZam2QUS+dW7YlDdDuZCIFWiqFwNQfoTPmomTBAigtwT/+GKeESmwTCFCgDpbu/zRsmyllpvPF+331eMtx7lFBt6hZOUdKH0nmtTa1gLNSq65MaTkm5TjaZckozAdm6Kan/0JVIsEJCP8YMDgTX9UYoB35orEilBLIeQqWZBhjqf9rMDgd2u9ZBsT4ChybHtyqZ4nZHz1cyTJvDSNrA7djnXONf6d54/7d3hpLzhXT5tjvpZTkfldKVKxbgxXQzd4f0bm8oCUrqSSeoxYpkpSmE0LjltdG8g+GdIj2aT+NSXmMQkubxO77I85hvtonf49V/A0ijlOVTvGLEnYv7+xBuN4apW7LRJYBKfIdPOmmKPmrgaZ9w52IjXuUgIgtdPAMKIn1YIemoykR685TPkZDAMshaqtHQlgQpFuM4mrbnzqNR7vncH3/q87e/r73crL94VSajUdz7g/IxFC0SJg4mTRyQljZjsN4oWLCI1gNhrdxMaUmNSG+hjkTGRjpxYWZf3h5clNXhawahnjCcKW3k6cphmlwYPTxGTvZEegLZw/gDX9yMmMMMKGawM539eUbujQPdHUIuUuvE/wl0fPi7mJ3PYPhfbB1fbsP5hltX8e5NTktPB2FEVePYHs/S/m8LCwVlQBaXOipw/LwgY11el8aKHNwjAZ/19XnzYxYI5y/jO7pl3PB+I7O6EpYQNUEe+mJzEyj5q5wpicozd48bp2ZFs3dq1UrPTXuHmmbCky8rsHgWVlECCTiitpJh35GhhE0w1V/i6yLIHGUxBvieIoLRo3Ob1jl4B8C40tWHdpkhHf3GQx6bDddRMwtdCTcgYGLuklCh19Wba3ZrlH2TVB2AmjYIMS4CWP9jkcf2LrZQ2GrIv583rYIHwe34pyCqI39z1uYzeMS0Mev5l8Edz3cyqB383yOOn8tP5NiWc9E3jPZLH2RYgQjjXLnFqVJIDH5uUx+fPMPPXL6X8mz5lS++dGy8+fz0N8LjhVHeQbpcFaNnp9mBh3ibziLRzfrmvZmIgg/eCUk7sViO1yKXdSDlS4XxqLZwCP1qS7DorJSx3zfM1tErvKrtr1d8436ofwLEA1h7CSHar+trdDh9Bfl2nNIIJE9S58YHl+vRxtukII/xiKKy6fnrcSof3oe8dNmfGxWdw5sJvgtyD3sDUDT+df60HL0O0TO2x2pXyklg32M2vN6G/gWo4P4HHKwbp+Snn9QCMqQavwKA73X0QALfcorngYCt8wIyZZi2P1wfkmpXo8lzG8iKlmlOVHE6+90igHOfcR++zA6syGRR6czhLn2jm8SJdxubpSswCMuP1G6zTfMwsDxxpBdzjG0c6ZS3LUm/EY/l4XBzj/sm0AS0iRmap6FYB2l2/I2i8AyupoMn/wdNRNl7CzeMRP7ztBc39ZPzVZKgU8DwabcOemLH70GQ6f8bBT9wcfpxHLN2fbdW/O8v35mCm4UCB3b1uWLJu7TbPA1awNw0MXbjloGWg1THLYVTGpf0aqXlKcW4KnAqRdFBpngoabcGLjOX/KUv3r5f9EwoB93FQgmz2DKdlb0eK2eU61xWrPuxe/XFm/e8k2aY9e9ZMtqQpKRYw/65v4SSQpNwxFcTvKUKso7Mow2ZY1McmR6RbtAenjAb5ghV5qSx8KpT9QwL2B7f7pgmE51ZuRdldtstmTK3a/qGKcHXnrZFxQSIkHRVQnrtgbnYK44R6iZWE9Yt6bUd67NiGI8Eeq6Zudxr4f/zh+oI5C+aU/1ilm9k86LR92ioIu9A4Jm5c/SON52mCxgwavm8L5/xnzGpBctyUyPDvY+cWTE6oZNA+HheiS9QnUhhzc3IWBJaDNK7zfO5kZXAyd77zEpN26VAzd7LzfOC51YknEJhRrCy8rDQBnSGL9juhmTMhW5bJyLOYpBkzoUwafxz1sauvRYRVoavSPtOns6BvzoZhY8qniXiuVO6zTzZLOt2nV4Uu4M2yXem27LfnkjHcTBvZfLB1PrKA8fY77Qnc5TVHlhfr9HpoQ/bCyiXDa1xAPOBMDMyzXphkL+CsmQudlJzc4DRwbWAuc4XMfgEqoJhuOORPn5rPWHXewg91u8S7JOtH3W3DCyF+LYSkNEMtEP+M2wbeBrB6SDq9B0mGM73YXnhtbA98V9sv5H8AhhqyRyYRPWtcQ2prRW7C3wEY6rMNKUHKNTuQkEl/AQQMUdovREFiABh65TMyFinXHUeSR7bQIgXJtqdI5J+UIaB+7CwopiZ+tcR+uPpvixf9pphhmtf0ZPo+YAng9yWAv6QqyuMK6o9Ukei1thRpk4VCxOBI1eNiDnuHhpIi/t4dsZWMK86hJO80dvGn1DHob9qKkRdyU2hP8CxO2szgrN0yKqHbuOpyjBvtLuBOW86cdxkiRETpwKYvAod+3zjp9R1n/X5QCf3F1ah/3OiPjDvdj4qHXVbjRfpIgCrBwNo75rrrELNepv35N0ADSxVxiZf8AMLn/XgyHKfHz8ABMYQV/4VOpSSYCNfGp8TZwLJc7An3CXQ5ZFJ6e6MRKbI61F0bpV0hAJV0shswzXtpTudykKOldObhbwAqYFGJim3l0g+A4OPqYxND4wboTOk02nYpS30vqClJNhHYWiu4bNgp2QQsY8SFecX6ngCdNMQ6DHn2jEhVpKlyOL1o33ul27ejTjgQKXKUqNFEW7RHR3RGV7yYvIve6Iv+0EBoECUfONSC7cCLezRdJGpxX6Y0zlr1k2Rwc+KUSxZoiVfgb9yZxJ7YKrfCz8+xD8ZZELMDn+vJO7CACtVOyFcuJYgkC1RNdXZ2Eo8czXKpnwke9Upik8PUe0QIAA==') format('woff2'),
|
|
||||||
url('//at.alicdn.com/t/font_1923666_2o4ez0t5t64.woff?t=1597068283360') format('woff'),
|
|
||||||
url('//at.alicdn.com/t/font_1923666_2o4ez0t5t64.ttf?t=1597068283360') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
|
|
||||||
url('//at.alicdn.com/t/font_1923666_2o4ez0t5t64.svg?t=1597068283360#iconfont') format('svg'); /* iOS 4.1- */
|
|
||||||
}
|
|
||||||
|
|
||||||
.iconfont {
|
|
||||||
font-family: "iconfont" !important;
|
|
||||||
font-size: 16px;
|
|
||||||
font-style: normal;
|
|
||||||
-webkit-font-smoothing: antialiased;
|
|
||||||
-moz-osx-font-smoothing: grayscale;
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-angle-up:before {
|
|
||||||
content: "\e9b3";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-ngleup:before {
|
|
||||||
content: "\e624";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-list:before {
|
|
||||||
content: "\e647";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-bilibili1:before {
|
|
||||||
content: "\e609";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-bilibili:before {
|
|
||||||
content: "\e62a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-github:before {
|
|
||||||
content: "\e62f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-weixin1:before {
|
|
||||||
content: "\e608";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-email:before {
|
|
||||||
content: "\e6f5";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-qq:before {
|
|
||||||
content: "\e600";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-zhihu:before {
|
|
||||||
content: "\e606";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-music:before {
|
|
||||||
content: "\e6ba";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-Telegram:before {
|
|
||||||
content: "\e6bd";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-twitter:before {
|
|
||||||
content: "\e601";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-huaban88:before {
|
|
||||||
content: "\e607";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-cnblogs:before {
|
|
||||||
content: "\e603";
|
|
||||||
}
|
|
||||||
|
|
||||||
.icon-u___fm__gp_:before {
|
|
||||||
content: "\e602";
|
|
||||||
}
|
|
10096
old/css/style.css
BIN
old/favicon.ico
Before Width: | Height: | Size: 264 KiB |
Before Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 39 KiB |
201
old/index.html
@ -1,201 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<!-- 基础信息 -->
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<meta name="renderer" content="webkit" />
|
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
|
||||||
<meta name="force-rendering" content="webkit" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<meta name="description" content="無名の主页">
|
|
||||||
<meta name="keywords" content="無名,个人主页">
|
|
||||||
<meta name="author" content="無名">
|
|
||||||
<title>無名の主页</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="./css/style.css">
|
|
||||||
<link rel="stylesheet" type="text/css" href="./css/iconfont.css">
|
|
||||||
<link rel="apple-touch-icon" href="./images/apple-touch-icon.png">
|
|
||||||
<link rel="icon" href="./favicon.ico">
|
|
||||||
<!--引入SweetAlert
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/sweetalert@2.1.2/dist/sweetalert.min.js"></script>-->
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@10.15.5/dist/sweetalert2.all.min.js"></script>
|
|
||||||
<!--引入izitoast-->
|
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/izitoast@1.4.0/dist/css/iziToast.min.css">
|
|
||||||
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/izitoast@1.4.0/dist/js/iziToast.min.js"></script>
|
|
||||||
<!--引入fontawesome-->
|
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/volantis-x/cdn-fontawesome-pro@master/css/all.min.css"
|
|
||||||
media="all">
|
|
||||||
<!--百度站长平台-->
|
|
||||||
<script>
|
|
||||||
var _hmt = _hmt || [];
|
|
||||||
(function () {
|
|
||||||
var hm = document.createElement("script");
|
|
||||||
hm.src = "https://hm.baidu.com/hm.js?14e9f35ff8bc67fd4bcb5f07a6e6655a";
|
|
||||||
var s = document.getElementsByTagName("script")[0];
|
|
||||||
s.parentNode.insertBefore(hm, s);
|
|
||||||
})();
|
|
||||||
</script>
|
|
||||||
<!--IE淘汰计划-->
|
|
||||||
<script>if (/*@cc_on!@*/false || (!!window.MSInputMethodContext && !!document.documentMode)) window.location.href = "https://imsyy.top/upgrade-your-browser/index.html?referrer=" + encodeURIComponent(window.location.href);</script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body oncontextmenu=self.event.returnValue=false onselectstart="return false">
|
|
||||||
<!--<span class="mobile btn-mobile-menu">
|
|
||||||
<i class="social iconfont icon-list btn-mobile-menu__icon"></i>
|
|
||||||
<i class="social iconfont icon-ngleup btn-mobile-close__icon hidden"></i>
|
|
||||||
</span>-->
|
|
||||||
<header id="panel" class="panel-cover">
|
|
||||||
<div class="panel-main">
|
|
||||||
<div class="panel-main__inner panel-inverted">
|
|
||||||
<div class="panel-main__content">
|
|
||||||
<div class="ih-item circle effect right_to_left">
|
|
||||||
<a class="blog-button">
|
|
||||||
<div class="img"><img src="./images/logo.png" alt="img" class="js-avatar iUp profilepic">
|
|
||||||
</div>
|
|
||||||
<div class="info iUp">
|
|
||||||
<div class="info-back">
|
|
||||||
<h2>Fighting</h2>
|
|
||||||
<p>2021 · 努力中</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<h1 class="panel-cover__title panel-title iUp">
|
|
||||||
<br />hello
|
|
||||||
</h1>
|
|
||||||
<p class="panel-cover__subtitle panel-subtitle iUp">Welcome to my website</p>
|
|
||||||
<hr class="panel-cover__divider iUp" />
|
|
||||||
<!--一言无法显示时的文字-->
|
|
||||||
<p id="description" class="panel-cover__description iUp">每一个人都应该明确自己的方向和位置
|
|
||||||
<br />
|
|
||||||
<strong>-「無名」</strong>
|
|
||||||
</p>
|
|
||||||
<div class="navigation-wrapper iUp">
|
|
||||||
<div>
|
|
||||||
<nav class="cover-navigation cover-navigation--primary">
|
|
||||||
<ul class="navigation">
|
|
||||||
<li class="navigation__item">
|
|
||||||
<a href="https://blog.imsyy.top/" target="_blank" class="blog-button">
|
|
||||||
<div>博客</div>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="navigation__item">
|
|
||||||
<!--<a onclick="update()" class="blog-button">-->
|
|
||||||
<a href="https://share.imsyy.top" target="_blank" class="blog-button">
|
|
||||||
<div>网盘</div>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="navigation__item">
|
|
||||||
<a href="https://web.imsyy.top/" target="_blank" class="blog-button">
|
|
||||||
<div>导航</div>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="navigation__item">
|
|
||||||
<a href="https://music.imsyy.top/" target="_blank" class="blog-button">
|
|
||||||
<div>音乐</div>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="navigation__item">
|
|
||||||
<a href="https://imsyy.top/" class="blog-button">
|
|
||||||
<div>前往新版</div>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
<div class="iUp">
|
|
||||||
<nav class="cover-navigation navigation--social">
|
|
||||||
<ul class="navigation">
|
|
||||||
|
|
||||||
<li class="navigation__item">
|
|
||||||
<a href="https://github.com/imsyy" title="Github" target="_blank">
|
|
||||||
<i class="fas fa-code-branch"></i>
|
|
||||||
<span class="label">Github</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="navigation__item">
|
|
||||||
<a href="https://t.me/bottom_user" title="Telegram" target="_blank">
|
|
||||||
<i class="fab fa-telegram-plane"></i>
|
|
||||||
<span class="label">Telegram</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="navigation__item">
|
|
||||||
<a href="https://twitter.com/woshisunyongyi" title="Twitter" target="_blank">
|
|
||||||
<i class="fab fa-twitter"></i>
|
|
||||||
<span class="label">Twitter</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="navigation__item">
|
|
||||||
<a href="http://wpa.qq.com/msgrd?v=3&uin=1539250352&site=qq&menu=yes" title="QQ"
|
|
||||||
target="_blank">
|
|
||||||
<i class="fab fa-qq"></i>
|
|
||||||
<span class="label">QQ</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="navigation__item">
|
|
||||||
<a onclick="weixin()" title="微信" target="_blank">
|
|
||||||
<i class="fab fa-weixin"></i>
|
|
||||||
<script>
|
|
||||||
function weixin() {
|
|
||||||
Swal.fire({
|
|
||||||
title: "请扫码",
|
|
||||||
text: "请使用微信扫一扫",
|
|
||||||
confirmButtonText: "好的",
|
|
||||||
imageUrl: "./images/weixin.png",
|
|
||||||
imageWidth: 150,
|
|
||||||
imageHeight: 150
|
|
||||||
})
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="navigation__item">
|
|
||||||
<a href="mailto:one@imsyy.top" title="Email">
|
|
||||||
<i class="fas fa-envelope"></i>
|
|
||||||
<span class="label">Email</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="panel-cover--overlay cover-slate"></div>
|
|
||||||
</div>
|
|
||||||
<div class="remark iUp">
|
|
||||||
<p class="power">Copyright © 2020
|
|
||||||
<script>document.write(' - ' + (new Date()).getFullYear())</script> 無名
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<!--izitoast弹窗设置-->
|
|
||||||
<script>
|
|
||||||
iziToast.settings({
|
|
||||||
timeout: 4000,//调试
|
|
||||||
icon: 'Fontawesome',
|
|
||||||
closeOnEscape: 'true',
|
|
||||||
position: 'topRight',
|
|
||||||
transitionOut: 'fadeOutRight',
|
|
||||||
displayMode: '2',
|
|
||||||
layout: '2',
|
|
||||||
transitionIn: 'bounceInLeft',
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
<!--izitoast内容-->
|
|
||||||
<script>
|
|
||||||
function update() {
|
|
||||||
iziToast.info({
|
|
||||||
icon: 'fad fa-times-octagon',
|
|
||||||
backgroundColor: '#efefef',
|
|
||||||
title: '站点暂时关闭',
|
|
||||||
message: '只是出现了一点小问题 ~'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
<script type="text/javascript" src="./js/jquery.min.js"></script>
|
|
||||||
<script type="text/javascript" src="./js/fetch.min.js"></script>
|
|
||||||
<script type="text/javascript" src="./js/main.js"></script>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
1
old/js/fetch.min.js
vendored
2
old/js/jquery.min.js
vendored
106
old/js/main.js
@ -1,106 +0,0 @@
|
|||||||
var iUp = (function () {
|
|
||||||
var t = 0,
|
|
||||||
d = 150,
|
|
||||||
clean = function () {
|
|
||||||
t = 0;
|
|
||||||
},
|
|
||||||
up = function (e) {
|
|
||||||
setTimeout(function () {
|
|
||||||
$(e).addClass("up")
|
|
||||||
}, t);
|
|
||||||
t += d;
|
|
||||||
},
|
|
||||||
down = function (e) {
|
|
||||||
$(e).removeClass("up");
|
|
||||||
},
|
|
||||||
toggle = function (e) {
|
|
||||||
setTimeout(function () {
|
|
||||||
$(e).toggleClass("up")
|
|
||||||
}, t);
|
|
||||||
t += d;
|
|
||||||
};
|
|
||||||
return {
|
|
||||||
clean: clean,
|
|
||||||
up: up,
|
|
||||||
down: down,
|
|
||||||
toggle: toggle
|
|
||||||
}
|
|
||||||
})();
|
|
||||||
|
|
||||||
$(document).ready(function () {
|
|
||||||
|
|
||||||
// 获取一言数据
|
|
||||||
fetch('https://v1.hitokoto.cn').then(function (res) {
|
|
||||||
return res.json();
|
|
||||||
}).then(function (e) {
|
|
||||||
$('#description').html(e.hitokoto + "<br/> -「<strong>" + e.from + "</strong>」")
|
|
||||||
}).catch(function (err) {
|
|
||||||
console.error(err);
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
// var url = 'https://query.yahooapis.com/v1/public/yql' +
|
|
||||||
// '?q=' + encodeURIComponent('select * from json where url=@url') +
|
|
||||||
// '&url=' + encodeURIComponent('https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=8') +
|
|
||||||
// '&format=json&callback=?';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取Bing壁纸
|
|
||||||
* 原先 YQL 已经无法提供服务了
|
|
||||||
* 改用 JsonBird:https://bird.ioliu.cn/
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
var url = 'https://bird.ioliu.cn/v1/?url=https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=8';
|
|
||||||
var imgUrls = JSON.parse(sessionStorage.getItem("imgUrls"));
|
|
||||||
var index = sessionStorage.getItem("index");
|
|
||||||
var $panel = $('#panel');
|
|
||||||
if (imgUrls == null) {
|
|
||||||
imgUrls = new Array();
|
|
||||||
index = 0;
|
|
||||||
$.get(url, function (result) {
|
|
||||||
images = result.images;
|
|
||||||
for (let i = 0; i < images.length; i++) {
|
|
||||||
const item = images[i];
|
|
||||||
imgUrls.push(item.url);
|
|
||||||
}
|
|
||||||
var imgUrl = imgUrls[index];
|
|
||||||
var url = "https://www.bing.com" + imgUrl;
|
|
||||||
$panel.css("background", "url('" + url + "') center center no-repeat #666");
|
|
||||||
$panel.css("background-size", "cover");
|
|
||||||
sessionStorage.setItem("imgUrls", JSON.stringify(imgUrls));
|
|
||||||
sessionStorage.setItem("index", index);
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
if (index == 7)
|
|
||||||
index = 0;
|
|
||||||
else
|
|
||||||
index++;
|
|
||||||
var imgUrl = imgUrls[index];
|
|
||||||
var url = "https://www.bing.com" + imgUrl;
|
|
||||||
$panel.css("background", "url('" + url + "') center center no-repeat #666");
|
|
||||||
$panel.css("background-size", "cover");
|
|
||||||
sessionStorage.setItem("index", index);
|
|
||||||
}
|
|
||||||
|
|
||||||
$(".iUp").each(function (i, e) {
|
|
||||||
iUp.up(e);
|
|
||||||
});
|
|
||||||
|
|
||||||
$(".js-avatar")[0].onload = function () {
|
|
||||||
$(".js-avatar").addClass("show");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$('.btn-mobile-menu__icon').click(function () {
|
|
||||||
if ($('.navigation-wrapper').css('display') == "block") {
|
|
||||||
$('.navigation-wrapper').on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function () {
|
|
||||||
$('.navigation-wrapper').toggleClass('visible animated bounceOutUp');
|
|
||||||
$('.navigation-wrapper').off('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend');
|
|
||||||
});
|
|
||||||
$('.navigation-wrapper').toggleClass('animated bounceInDown animated bounceOutUp');
|
|
||||||
|
|
||||||
} else {
|
|
||||||
$('.navigation-wrapper').toggleClass('visible animated bounceInDown');
|
|
||||||
}
|
|
||||||
$('.btn-mobile-menu__icon').toggleClass('social iconfont icon-list social iconfont icon-ngleup animated fadeIn');
|
|
||||||
});
|
|
@ -1,58 +0,0 @@
|
|||||||
/* Eric Meyer's Reset CSS v2.0 - http://cssreset.com */
|
|
||||||
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}
|
|
||||||
*, ::after, ::before {box-sizing: border-box;}
|
|
||||||
|
|
||||||
a{text-decoration:none;color:#0072c6;}a:hover{text-decoration:none;color:#004d8c;}
|
|
||||||
body{text-align:center;font-size:14px;line-height:24px;font-family:Microsoft YaHei, '宋体', sans-serif;color:#454545;overflow-y:scroll;_overflow-y:auto;*overflow-y:auto}
|
|
||||||
.page{width:960px;margin:0 auto;padding:10px;text-align:left;}
|
|
||||||
h2,h3{font-family:Microsoft YaHei}
|
|
||||||
h1{font-size:40px;line-height:60px;font-weight:100;margin:20px 0 15px;}
|
|
||||||
h2{font-size:20px;line-height:25px;font-weight:100;margin:10px 0;}
|
|
||||||
h3{font-weight:bold}
|
|
||||||
|
|
||||||
code{padding: 2px 4px;font-size: 95%;color: #c7254e;background-color: #f9f2f4;border-radius: 4px;}
|
|
||||||
pre code{white-space: pre-wrap;word-break:break-word;display:inline-block;word-break:break-all;}
|
|
||||||
ul{padding:0 1em;}
|
|
||||||
ul li{list-style-type:disc;list-style-position:inside;}
|
|
||||||
|
|
||||||
b,strong{font-weight:bold}
|
|
||||||
em{color:red}
|
|
||||||
|
|
||||||
p{margin-bottom:10px}
|
|
||||||
hr, .hr{margin:20px 0;border:0;width:100%;height:1px;overflow:hidden;background-color:#ccc}
|
|
||||||
|
|
||||||
.text-right{text-align:right}
|
|
||||||
.clearboth{clear:both;width:100%;content: "";}
|
|
||||||
.clearleft{clear:left;width:100%;content: "";}
|
|
||||||
.clearright{clear:right;width:100%;content: "";}
|
|
||||||
|
|
||||||
.browser-list{margin:16px 0 10px;padding:0;height:42px;_overflow:hidden}
|
|
||||||
.browser{display:block;width:155px;height:34px;line-height:22px;float:left;list-style:none;}
|
|
||||||
.browser.clearleft{height:1px}
|
|
||||||
.browser span{display:block;font-size:12px;line-height:1.2;}
|
|
||||||
.browser img{width:34px;height:34px;border:0;float:left;margin-right:10px;}
|
|
||||||
.browser.firefox{width:150px}
|
|
||||||
.browser.edge{width:150px}
|
|
||||||
.browser.safari{width:150px}
|
|
||||||
.browser.se360{width:160px}
|
|
||||||
.browser.qqbrowser{width:140px}
|
|
||||||
.small-alert{font-size:12px;margin:15px 0 8px;color:#90949c}
|
|
||||||
.small-alert:not(.hide)+hr{margin-top:0}
|
|
||||||
.hide{display:none}
|
|
||||||
.alert-danger{display:block;color:#777;background-color:#f1f1f1;padding:6px 12px;_padding:8px 12px 6px;clear:both;}
|
|
||||||
.alert-info{color:#000;background-color:#f1f6fc;margin-top:12px}
|
|
||||||
.alert-info img{vertical-align:text-top;}
|
|
||||||
#win-danger{margin-top:12px;position: relative;}
|
|
||||||
#win-danger .arrow{background:url(/images/arrow.png) no-repeat;border:0;position:absolute;display:block;width:20px;height:12px;left:325px;top:-12px}
|
|
||||||
|
|
||||||
.targetline, #referrer a{word-break:break-all;}
|
|
||||||
.top-alert {background:#f2f2f2;}
|
|
||||||
.top-alert-content {font-size:14px;}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 959px) {
|
|
||||||
.page {max-width:100%;padding:20px;font-size:16px;line-height:26px;}
|
|
||||||
h1 {font-size:26px;line-height:1.8;font-weight:bold;margin-top:0}
|
|
||||||
.browser-list {height:auto}
|
|
||||||
.browser {margin:0 20px 20px 0}
|
|
||||||
code {word-break: break-word;}
|
|
||||||
}
|
|
@ -1,58 +0,0 @@
|
|||||||
/* Eric Meyer's Reset CSS v2.0 - http://cssreset.com */
|
|
||||||
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}
|
|
||||||
*, ::after, ::before {box-sizing: border-box;}
|
|
||||||
|
|
||||||
a{text-decoration:none;color:#0072c6;}a:hover{text-decoration:none;color:#004d8c;}
|
|
||||||
body{text-align:center;font-size:14px;line-height:24px;font-family:Microsoft YaHei, '宋体', sans-serif;color:#454545;overflow-y:scroll;_overflow-y:auto;*overflow-y:auto}
|
|
||||||
.page{width:960px;margin:0 auto;padding:10px;text-align:left;}
|
|
||||||
h2,h3{font-family:Microsoft YaHei}
|
|
||||||
h1{font-size:40px;line-height:60px;font-weight:100;margin:20px 0 15px;}
|
|
||||||
h2{font-size:20px;line-height:25px;font-weight:100;margin:10px 0;}
|
|
||||||
h3{font-weight:bold}
|
|
||||||
|
|
||||||
code{padding: 2px 4px;font-size: 95%;color: #c7254e;background-color: #f9f2f4;border-radius: 4px;}
|
|
||||||
pre code{white-space: pre-wrap;word-break:break-word;display:inline-block;word-break:break-all;}
|
|
||||||
ul{padding:0 1em;}
|
|
||||||
ul li{list-style-type:disc;list-style-position:inside;}
|
|
||||||
|
|
||||||
b,strong{font-weight:bold}
|
|
||||||
em{color:red}
|
|
||||||
|
|
||||||
p{margin-bottom:10px}
|
|
||||||
hr, .hr{margin:20px 0;border:0;width:100%;height:1px;overflow:hidden;background-color:#ccc}
|
|
||||||
|
|
||||||
.text-right{text-align:right}
|
|
||||||
.clearboth{clear:both;width:100%;content: "";}
|
|
||||||
.clearleft{clear:left;width:100%;content: "";}
|
|
||||||
.clearright{clear:right;width:100%;content: "";}
|
|
||||||
|
|
||||||
.browser-list{margin:16px 0 10px;padding:0;height:42px;_overflow:hidden}
|
|
||||||
.browser{display:block;width:155px;height:34px;line-height:22px;float:left;list-style:none;}
|
|
||||||
.browser.clearleft{height:1px}
|
|
||||||
.browser span{display:block;font-size:12px;line-height:1.2;}
|
|
||||||
.browser img{width:34px;height:34px;border:0;float:left;margin-right:10px;}
|
|
||||||
.browser.firefox{width:150px}
|
|
||||||
.browser.edge{width:150px}
|
|
||||||
.browser.safari{width:150px}
|
|
||||||
.browser.se360{width:160px}
|
|
||||||
.browser.qqbrowser{width:140px}
|
|
||||||
.small-alert{font-size:12px;margin:15px 0 8px;color:#90949c}
|
|
||||||
.small-alert:not(.hide)+hr{margin-top:0}
|
|
||||||
.hide{display:none}
|
|
||||||
.alert-danger{display:block;color:#777;background-color:#f1f1f1;padding:6px 12px;_padding:8px 12px 6px;clear:both;}
|
|
||||||
.alert-info{color:#000;background-color:#f1f6fc;margin-top:12px}
|
|
||||||
.alert-info img{vertical-align:text-top;}
|
|
||||||
#win-danger{margin-top:12px;position: relative;}
|
|
||||||
#win-danger .arrow{background:url(/images/arrow.png) no-repeat;border:0;position:absolute;display:block;width:20px;height:12px;left:325px;top:-12px}
|
|
||||||
|
|
||||||
.targetline, #referrer a{word-break:break-all;}
|
|
||||||
.top-alert {background:#f2f2f2;}
|
|
||||||
.top-alert-content {font-size:14px;}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 959px) {
|
|
||||||
.page {max-width:100%;padding:20px;font-size:16px;line-height:26px;}
|
|
||||||
h1 {font-size:26px;line-height:1.8;font-weight:bold;margin-top:0}
|
|
||||||
.browser-list {height:auto}
|
|
||||||
.browser {margin:0 20px 20px 0}
|
|
||||||
code {word-break: break-word;}
|
|
||||||
}
|
|
@ -1,62 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="zh-CN">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<meta name="renderer" content="webkit" />
|
|
||||||
<meta name="force-rendering" content="webkit" />
|
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
|
|
||||||
<meta name="robots" content="noindex,nofollow,noarchive" />
|
|
||||||
<title>对旧版 Internet Explorer 的支持服务已终止</title>
|
|
||||||
<meta name="description"
|
|
||||||
content="从 2016 年 1 月 12 日开始,仅面向受支持操作系统的最新版 Internet Explorer 将收到技术支持和安全更新。Internet Explorer 11 是最新版的 Internet Explorer,将继续在 Windows 7、Windows 8.1 和 Windows 10 上收到安全更新、兼容性修复程序和技术支持。" />
|
|
||||||
<meta http-equiv="Cache-Control" content="no-siteapp" />
|
|
||||||
<meta http-equiv="Cache-Control" content="no-transform" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
||||||
<base href="./" target="_blank" />
|
|
||||||
<script src="./js/er3eport.js"></script>
|
|
||||||
<link rel="icon" type="image/png" href="../favicon.ico" />
|
|
||||||
<link type="text/css" rel="stylesheet" href="./css/support.style.css" />
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div class="top-alert">
|
|
||||||
<div class="page">
|
|
||||||
<div class="top-alert-content">本页是 IE 旧版支持服务终止页面的文字副本,因微软官方网页无法在旧版IE中正常访问,故提供此备份以供旧版IE用户浏览。<a
|
|
||||||
href="https://www.microsoft.com/zh-cn/WindowsForBusiness/End-of-IE-support" target="_blank"
|
|
||||||
rel="nofollow">查看原网页</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="page">
|
|
||||||
<h1>对旧版 Internet Explorer 的支持服务已终止</h1>
|
|
||||||
<p>从 2016 年 1 月 12 日开始,仅面向受支持操作系统的最新版 Internet Explorer 将收到技术支持和安全更新。Internet Explorer 11 是最新版的 Internet
|
|
||||||
Explorer,将继续在 Windows 7、Windows 8.1 和 Windows 10 上收到安全更新、兼容性修复程序和技术支持。</p>
|
|
||||||
<div class="hr"></div>
|
|
||||||
<h2>这意味着什么?</h2>
|
|
||||||
<p>这意味着您应该采取行动。2016 年 1 月 12 日之后,Microsoft 将不再为 Internet Explorer
|
|
||||||
早期版本提供安全更新或技术支持。安全更新用于修补可能被恶意软件利用的漏洞,从而为提高用户及其数据的安全性提供帮助。定期安全更新帮助保护计算机不受恶意攻击,因此升级和保持最新很重要。</p>
|
|
||||||
<div class="hr"></div>
|
|
||||||
<h2>我如何升级 Internet Explorer?</h2>
|
|
||||||
<p><strong>中小型企业:</strong>对于考虑浏览器升级的中小型企业,选择有很多。没有 Web 应用程序的中小型组织(员工在 500 人以下)可使用自动更新进行自动更新。对于依赖现有 Web
|
|
||||||
应用程序的中小型企业,可以寻找 Microsoft 认证合作伙伴以了解符合其业务需要的最佳方案。</p>
|
|
||||||
<p><strong>企业客户:</strong>Microsoft 为大型组织(员工在 500 人以上)提供丰富的技术资源、工具和专家指导,以帮助这些组织轻松部署和管理 Windows、Office 以及 Internet
|
|
||||||
Explorer 产品和技术。通过联系您的 Microsoft 销售代表、Microsoft Services 部门或 Microsoft 认证合作伙伴,详细了解迁移和部署计划。了解如何通过访问 TechNet
|
|
||||||
自行试用和部署最新版本的 Edge。</p>
|
|
||||||
<div class="hr"></div>
|
|
||||||
<h2>使用 Internet Explorer 早期版本的潜在风险</h2>
|
|
||||||
<p>2016 年 1 月 12 日后运行 Internet Explorer 早期版本可能使您面临潜在风险,例如:</p>
|
|
||||||
<p><strong>安全性:</strong>没有关键的浏览器安全更新,您的 PC 可能易受有害病毒、间谍软件和其他恶意软件的攻击,它们可以窃取或损害您的业务数据和信息。</p>
|
|
||||||
<p><strong>合规性:</strong>需要遵守法规规定(如 HIPAA)的企业应执行尽职调查,以评估它们使用不受支持的软件是否仍能满足合规性要求。</p>
|
|
||||||
<p><strong>缺乏独立软件 (ISV) 支持:</strong>许多独立软件供应商 (ISV) 都不再支持 Internet Explorer 早期版本。例如,Office 365 采用现代 Web
|
|
||||||
标准,而且与最新浏览器一起使用时运行最出色。</p>
|
|
||||||
<div class="hr"></div>
|
|
||||||
<p>Copyright © 2020 <script>document.write(' - ' + (new Date()).getFullYear())</script> <a href="https://imsyy.top/">無名</a> . All Rights Reserved</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div style="display:none !important">
|
|
||||||
<script id="hello-world-js" src="./js/hello.world.js"></script>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
@ -1,60 +0,0 @@
|
|||||||
// simple error report by baidu tongji
|
|
||||||
|
|
||||||
var _hmt = _hmt || [];
|
|
||||||
|
|
||||||
var er3eport = {};
|
|
||||||
er3eport.start = (new Date().getTime());
|
|
||||||
er3eport.codetime = function () {
|
|
||||||
return (new Date().getTime()) - er3eport.start;
|
|
||||||
};
|
|
||||||
er3eport.dodnt = function () {
|
|
||||||
window.dnt = 1; if (typeof window.dodnt === 'function') window.dodnt();
|
|
||||||
};
|
|
||||||
er3eport.jqdefined = function () {
|
|
||||||
_hmt.push(['_setCustomVar', 2, 'JSERROR', 'jQueryDefined' + ' # ' + er3eport.codetime(), 3]);
|
|
||||||
er3eport.dodnt();
|
|
||||||
};
|
|
||||||
er3eport.listener = function (msg) {
|
|
||||||
|
|
||||||
var logstr = false;
|
|
||||||
var errtype = 'JSERROR';
|
|
||||||
if (typeof msg === 'string') {
|
|
||||||
logstr = msg;
|
|
||||||
|
|
||||||
} else {
|
|
||||||
if (msg.error) logstr = msg.error.stack;
|
|
||||||
else if (msg.message) logstr = msg.message;
|
|
||||||
|
|
||||||
var src;
|
|
||||||
if (msg.srcElement && msg.srcElement.src) src = msg.srcElement.src;
|
|
||||||
else if (msg.target && msg.target.src) src = msg.target.src;
|
|
||||||
|
|
||||||
if (! logstr) {
|
|
||||||
if (src) {
|
|
||||||
logstr = 'FileError: ' + src;
|
|
||||||
errtype = 'FILEERROR';
|
|
||||||
} else if (msg.type) {
|
|
||||||
logstr = msg.type;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (typeof logstr !== 'string') {
|
|
||||||
logstr = 'empty_error_string'
|
|
||||||
} else {
|
|
||||||
logstr = logstr.replace(/\n/g, '').replace(/\s+/g, ' ');
|
|
||||||
}
|
|
||||||
|
|
||||||
_hmt.push(['_trackEvent', errtype, window.location.pathname, logstr + ' #UA# ' + navigator.userAgent + ' # ' + er3eport.codetime()]);
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (typeof jQuery === 'function') er3eport.jqdefined();
|
|
||||||
if (Object.defineProperty) Object.defineProperty(window, 'jQuery', {set: er3eport.jqdefined});
|
|
||||||
|
|
||||||
if (window.addEventListener) {
|
|
||||||
window.addEventListener('error', er3eport.listener, true);
|
|
||||||
} else if (window.attachEvent) {
|
|
||||||
window.attachEvent('onerror', er3eport.listener);
|
|
||||||
}
|
|
@ -1,83 +0,0 @@
|
|||||||
setTimeout(function() {
|
|
||||||
|
|
||||||
var realPathname = window.location.pathname;
|
|
||||||
// ie 兼容
|
|
||||||
if (realPathname.indexOf('/') !== 0) {
|
|
||||||
realPathname = '/' + realPathname;
|
|
||||||
}
|
|
||||||
var isUPPage = realPathname === '/upgrade-your-browser.html';
|
|
||||||
var isSpHost = window.location.hostname === 'support.dmeng.net';
|
|
||||||
window.dodnt = function() {
|
|
||||||
var now = new Date(); var time = now.getTime(); time += 600 * 1000; now.setTime(time);
|
|
||||||
document.cookie = 'dnt=1' + '; expires=' + now.toUTCString() + '; path=/';
|
|
||||||
}; var doTrack = typeof window.dnt === 'undefined';
|
|
||||||
if (doTrack === false && document.cookie.match(/dnt=1/) === null) window.dodnt();
|
|
||||||
|
|
||||||
window._hmt = window._hmt || [];
|
|
||||||
var _hmt_id = '6ddc2cf73e10ed480880c454b957e809';
|
|
||||||
if (isSpHost) {
|
|
||||||
|
|
||||||
if (doTrack) {
|
|
||||||
|
|
||||||
_hmt_id = '3546503052812606f053b8bb63ef0e99';
|
|
||||||
|
|
||||||
// 统计需要升级的IE版本
|
|
||||||
if (isUPPage) {
|
|
||||||
|
|
||||||
var iever = "none";
|
|
||||||
|
|
||||||
var _jsver = 0;
|
|
||||||
/*@cc_on
|
|
||||||
_jsver = @_jscript_version;
|
|
||||||
@*/
|
|
||||||
if (_jsver === 0) {
|
|
||||||
// IE11 或者不是 IE
|
|
||||||
|
|
||||||
if (!!window.MSInputMethodContext && !!document.documentMode) {
|
|
||||||
iever = 11;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
var docmode = document.documentMode;
|
|
||||||
if (!! docmode && docmode > 5) {
|
|
||||||
iever = docmode;
|
|
||||||
} else if (_jsver === 5.7 && window.XMLHttpRequest) {
|
|
||||||
iever = 7;
|
|
||||||
} else if (_jsver === 5.6 || (_jsver === 5.7 && !window.XMLHttpRequest)) {
|
|
||||||
iever = 6;
|
|
||||||
} else {
|
|
||||||
iever = 5;
|
|
||||||
}
|
|
||||||
iever += "";
|
|
||||||
}
|
|
||||||
|
|
||||||
var winver = 'other';
|
|
||||||
var ua = navigator.userAgent;
|
|
||||||
|
|
||||||
if (ua.indexOf("Windows NT 5") !== -1) {
|
|
||||||
winver = 'winXP';
|
|
||||||
} else if (ua.indexOf("Windows NT 6.1") !== -1) {
|
|
||||||
winver = 'win7';
|
|
||||||
} else if (ua.indexOf("Windows NT 6.2") !== -1) {
|
|
||||||
winver = 'win8';
|
|
||||||
} else if (ua.indexOf("Windows NT 6.3") !== -1) {
|
|
||||||
winver = 'win8.1';
|
|
||||||
} else if (ua.indexOf("Windows NT 10") !== -1) {
|
|
||||||
winver = 'win10';
|
|
||||||
}
|
|
||||||
|
|
||||||
_hmt.push(['_setCustomVar', 1, 'ClientVer', winver + "_IE" + iever, 3]);
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
_hmt_id = 'b5afc37c04e670dc17f68727f92ea21c';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
_hmt.unshift(['_setAccount', _hmt_id]);
|
|
||||||
|
|
||||||
var helloWorldJS = document.getElementById('hello-world-js');
|
|
||||||
var hm = document.createElement('script');
|
|
||||||
hm.src = '//hm.baidu.com/hm.js?' + _hmt_id;
|
|
||||||
helloWorldJS.parentNode.insertBefore(hm, helloWorldJS);
|
|
||||||
|
|
||||||
}, 1500);
|
|
Before Width: | Height: | Size: 66 KiB |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 3.0 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 4.4 KiB |
Before Width: | Height: | Size: 3.7 KiB |
@ -1,97 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="zh-CN">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<meta name="renderer" content="webkit" />
|
|
||||||
<meta name="force-rendering" content="webkit" />
|
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
||||||
<title>请升级您的浏览器</title>
|
|
||||||
<meta name="description" content="这是一个旧版IE升级提示页" />
|
|
||||||
<script src="./js/er3eport.js"></script>
|
|
||||||
<link rel="icon" type="image/png" href="./favicon.ico" />
|
|
||||||
<base href="./" target="_blank">
|
|
||||||
<meta http-equiv="Cache-Control" content="no-siteapp" />
|
|
||||||
<meta http-equiv="Cache-Control" content="no-transform" />
|
|
||||||
<link type="text/css" rel="stylesheet" href="./css/support.style.css" />
|
|
||||||
<script>
|
|
||||||
var l = window.location, s = l.search.substr(1),
|
|
||||||
r = '', dr = document.referrer, r1 = s.match(/(^|&)referrer=((http|https)[^&]*)/), r2 = s.match(/^referrer=((http|https)\:\/\/.*)$/);
|
|
||||||
if (r2 !== null) r = r2[1]; else if (r1 !== null) r = r1[2];
|
|
||||||
if (r === '' && dr !== '' && dr.match(/\/(?:.*\.dmeng\.net|(?:(?:(?:www|m|wap|cn|search)\.)?(?:google|baidu|sogou|bing|so|yahoo|yandex|duckduckgo)\.com(?:\.[a-z]+)?))/) === null) {
|
|
||||||
l.href = l.protocol + '//' + l.hostname + l.pathname + '?referrer=' + encodeURIComponent(dr) + '&' + s;
|
|
||||||
}
|
|
||||||
var url = decodeURIComponent(r);
|
|
||||||
if (url.indexOf(window.location.hostname + '/') != -1) url = '';
|
|
||||||
var targetUrlHTML = '';
|
|
||||||
if (url !== '') {
|
|
||||||
var m = url.match(/^(https?\:\/\/[^/]+\/)index\.html$/);
|
|
||||||
targetUrlHTML = ' <a href="' + url + '" onclick="alert(\'点击右键“复制快捷方式”(复制链接)到更先进的浏览器访问。\');return false;" rel="noreferrer">' + (m ? m[1] : url) + '</a> ';
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div class="page">
|
|
||||||
<h1>是时候升级你的浏览器了</h1>
|
|
||||||
<p>你正在使用旧版 Internet Explorer( IE11 及以下版本或使用该内核的浏览器 )。这意味着在升级浏览器前,你将无法访问此网站。</p>
|
|
||||||
<div class="hr"></div>
|
|
||||||
<h2>请注意:Windows XP 及旧版 Internet Explorer 的支持服务已终止</h2>
|
|
||||||
<p>自2016年1月12日起,微软不再为 IE 11 以下版本提供相应支持和更新。没有关键的浏览器安全更新,您的电脑可能易受有害病毒、间谍软件和其他恶意软件的攻击,它们可以窃取或损害您的业务数据和信息。请参阅 <a
|
|
||||||
href="./end-of-ie-support/index.html">微软对旧版 Internet Explorer 的支持服务已终止的说明</a> 。</p>
|
|
||||||
<div class="hr"></div>
|
|
||||||
<h2>更先进的浏览器</h2>
|
|
||||||
<p class="targetline">推荐使用以下浏览器的最新版本。如果你的电脑已有以下浏览器的最新版本则直接使用该浏览器或开启极速模式访问即可。</p>
|
|
||||||
<!-- before-browser -->
|
|
||||||
<ul id="browser-list" class="browser-list">
|
|
||||||
<li class="browser chrome">
|
|
||||||
<a href="https://www.google.cn/chrome/thank-you.html?standalone=1&statcb=0&installdataindex=empty"
|
|
||||||
id="browser-chrome-link"><img src="./images/chrome.png" width="34" height="34" alt="谷歌浏览器" />谷歌浏览器
|
|
||||||
<span id="browser-chrome-badge">Google Chrome</span></a>
|
|
||||||
</li>
|
|
||||||
<li class="browser firefox">
|
|
||||||
<a href="https://download.mozilla.org/?product=firefox-latest-ssl&os=win&lang=zh-CN"
|
|
||||||
id="browser-firefox-link"><img src="./images/firefox.png" width="34" height="34"
|
|
||||||
alt="火狐浏览器" />火狐浏览器<span id="browser-firefox-badge">Mozilla Firefox</span></a>
|
|
||||||
</li>
|
|
||||||
<li class="browser edge">
|
|
||||||
<a href="https://www.microsoft.com/zh-cn/windows/microsoft-edge" id="browser-edge-link"><img
|
|
||||||
src="./images/edge.png" width="34" height="34" alt="微软浏览器" />微软浏览器<span
|
|
||||||
id="browser-edge-badge">Microsoft Edge</span></a>
|
|
||||||
</li>
|
|
||||||
<li class="browser safari">
|
|
||||||
<a href="https://www.apple.com.cn/safari/" id="browser-safari-link"><img
|
|
||||||
src="./images/safari.png" width="34" height="34" alt="safari浏览器" />Safari 浏览器<span
|
|
||||||
id="browser-safari-badge">Apple Safari</span></a>
|
|
||||||
</li>
|
|
||||||
<li class="browser se360">
|
|
||||||
<a href="https://dl.360safe.com/netunion/20140425/360se%2b75526%2bn1abed0ce91.exe"
|
|
||||||
id="browser-se360-link"><img src="./images/se360.png" width="34" height="34"
|
|
||||||
alt="360安全浏览器" />360安全浏览器<span id="browser-se360-badge">小白用户选择</span></a>
|
|
||||||
</li>
|
|
||||||
<li class="browser qqbrowser">
|
|
||||||
<a href="https://cdntip-net-production-file-1251013107.file.myqcloud.com/myapp/rcps/d/85000/QQBrowser_subid@100002_urlid@100002.exe"
|
|
||||||
id="browser-qqbrowser-link"><img src="./images/qqbrowser.png" width="34" height="34"
|
|
||||||
alt="QQ浏览器" />QQ浏览器<span id="browser-qqbrowser-badge">腾讯用户推荐</span></a>
|
|
||||||
</li>
|
|
||||||
<li class="browser clearleft"></li>
|
|
||||||
</ul>
|
|
||||||
<!-- after-browser -->
|
|
||||||
<div class="hr"></div>
|
|
||||||
<h2>为什么会出现这个页面?</h2>
|
|
||||||
<p>如果你不知道升级浏览器是什么意思,请请教一些熟练电脑操作的朋友。如果你使用的不是 IE6 / 7 / 8 / 9 / 10,而是 Google Chrome、Safari、Microsoft Edge、火狐浏览器等,出现这个页面可能是因为你使用的不是该浏览器的最新版本,升级至最新即可。
|
|
||||||
</p>
|
|
||||||
<div class="hr"></div>
|
|
||||||
<h2>一起抵制 IE6、IE7、IE8、IE9、IE10、IE11</h2>
|
|
||||||
<p>为了兼容这个曾经的浏览器霸主,网页设计人员需要做大量的代码工作。对于普通用户而言,低版本 IE 更是一个岌岌可危的安全隐患,在 Windows 历史上几次大的木马病毒事件都是利用 IE 漏洞进行传播。所以,请和我们一起抵制 IE 的过期版本!
|
|
||||||
</p>
|
|
||||||
<div class="hr"></div>
|
|
||||||
<p>Copyright © 2020 <script>document.write(' - ' + (new Date()).getFullYear())</script> <a href="https://imsyy.top/">無名</a> . All Rights Reserved</p>
|
|
||||||
</div>
|
|
||||||
<div style="display:none !important">
|
|
||||||
<script id="hello-world-js" src="./js/hello.world.js"></script>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
@ -1,60 +0,0 @@
|
|||||||
// simple error report by baidu tongji
|
|
||||||
|
|
||||||
var _hmt = _hmt || [];
|
|
||||||
|
|
||||||
var er3eport = {};
|
|
||||||
er3eport.start = (new Date().getTime());
|
|
||||||
er3eport.codetime = function () {
|
|
||||||
return (new Date().getTime()) - er3eport.start;
|
|
||||||
};
|
|
||||||
er3eport.dodnt = function () {
|
|
||||||
window.dnt = 1; if (typeof window.dodnt === 'function') window.dodnt();
|
|
||||||
};
|
|
||||||
er3eport.jqdefined = function () {
|
|
||||||
_hmt.push(['_setCustomVar', 2, 'JSERROR', 'jQueryDefined' + ' # ' + er3eport.codetime(), 3]);
|
|
||||||
er3eport.dodnt();
|
|
||||||
};
|
|
||||||
er3eport.listener = function (msg) {
|
|
||||||
|
|
||||||
var logstr = false;
|
|
||||||
var errtype = 'JSERROR';
|
|
||||||
if (typeof msg === 'string') {
|
|
||||||
logstr = msg;
|
|
||||||
|
|
||||||
} else {
|
|
||||||
if (msg.error) logstr = msg.error.stack;
|
|
||||||
else if (msg.message) logstr = msg.message;
|
|
||||||
|
|
||||||
var src;
|
|
||||||
if (msg.srcElement && msg.srcElement.src) src = msg.srcElement.src;
|
|
||||||
else if (msg.target && msg.target.src) src = msg.target.src;
|
|
||||||
|
|
||||||
if (! logstr) {
|
|
||||||
if (src) {
|
|
||||||
logstr = 'FileError: ' + src;
|
|
||||||
errtype = 'FILEERROR';
|
|
||||||
} else if (msg.type) {
|
|
||||||
logstr = msg.type;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (typeof logstr !== 'string') {
|
|
||||||
logstr = 'empty_error_string'
|
|
||||||
} else {
|
|
||||||
logstr = logstr.replace(/\n/g, '').replace(/\s+/g, ' ');
|
|
||||||
}
|
|
||||||
|
|
||||||
_hmt.push(['_trackEvent', errtype, window.location.pathname, logstr + ' #UA# ' + navigator.userAgent + ' # ' + er3eport.codetime()]);
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (typeof jQuery === 'function') er3eport.jqdefined();
|
|
||||||
if (Object.defineProperty) Object.defineProperty(window, 'jQuery', {set: er3eport.jqdefined});
|
|
||||||
|
|
||||||
if (window.addEventListener) {
|
|
||||||
window.addEventListener('error', er3eport.listener, true);
|
|
||||||
} else if (window.attachEvent) {
|
|
||||||
window.attachEvent('onerror', er3eport.listener);
|
|
||||||
}
|
|
@ -1,83 +0,0 @@
|
|||||||
setTimeout(function() {
|
|
||||||
|
|
||||||
var realPathname = window.location.pathname;
|
|
||||||
// ie 兼容
|
|
||||||
if (realPathname.indexOf('/') !== 0) {
|
|
||||||
realPathname = '/' + realPathname;
|
|
||||||
}
|
|
||||||
var isUPPage = realPathname === '/upgrade-your-browser.html';
|
|
||||||
var isSpHost = window.location.hostname === 'support.dmeng.net';
|
|
||||||
window.dodnt = function() {
|
|
||||||
var now = new Date(); var time = now.getTime(); time += 600 * 1000; now.setTime(time);
|
|
||||||
document.cookie = 'dnt=1' + '; expires=' + now.toUTCString() + '; path=/';
|
|
||||||
}; var doTrack = typeof window.dnt === 'undefined';
|
|
||||||
if (doTrack === false && document.cookie.match(/dnt=1/) === null) window.dodnt();
|
|
||||||
|
|
||||||
window._hmt = window._hmt || [];
|
|
||||||
var _hmt_id = '6ddc2cf73e10ed480880c454b957e809';
|
|
||||||
if (isSpHost) {
|
|
||||||
|
|
||||||
if (doTrack) {
|
|
||||||
|
|
||||||
_hmt_id = '3546503052812606f053b8bb63ef0e99';
|
|
||||||
|
|
||||||
// 统计需要升级的IE版本
|
|
||||||
if (isUPPage) {
|
|
||||||
|
|
||||||
var iever = "none";
|
|
||||||
|
|
||||||
var _jsver = 0;
|
|
||||||
/*@cc_on
|
|
||||||
_jsver = @_jscript_version;
|
|
||||||
@*/
|
|
||||||
if (_jsver === 0) {
|
|
||||||
// IE11 或者不是 IE
|
|
||||||
|
|
||||||
if (!!window.MSInputMethodContext && !!document.documentMode) {
|
|
||||||
iever = 11;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
var docmode = document.documentMode;
|
|
||||||
if (!! docmode && docmode > 5) {
|
|
||||||
iever = docmode;
|
|
||||||
} else if (_jsver === 5.7 && window.XMLHttpRequest) {
|
|
||||||
iever = 7;
|
|
||||||
} else if (_jsver === 5.6 || (_jsver === 5.7 && !window.XMLHttpRequest)) {
|
|
||||||
iever = 6;
|
|
||||||
} else {
|
|
||||||
iever = 5;
|
|
||||||
}
|
|
||||||
iever += "";
|
|
||||||
}
|
|
||||||
|
|
||||||
var winver = 'other';
|
|
||||||
var ua = navigator.userAgent;
|
|
||||||
|
|
||||||
if (ua.indexOf("Windows NT 5") !== -1) {
|
|
||||||
winver = 'winXP';
|
|
||||||
} else if (ua.indexOf("Windows NT 6.1") !== -1) {
|
|
||||||
winver = 'win7';
|
|
||||||
} else if (ua.indexOf("Windows NT 6.2") !== -1) {
|
|
||||||
winver = 'win8';
|
|
||||||
} else if (ua.indexOf("Windows NT 6.3") !== -1) {
|
|
||||||
winver = 'win8.1';
|
|
||||||
} else if (ua.indexOf("Windows NT 10") !== -1) {
|
|
||||||
winver = 'win10';
|
|
||||||
}
|
|
||||||
|
|
||||||
_hmt.push(['_setCustomVar', 1, 'ClientVer', winver + "_IE" + iever, 3]);
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
_hmt_id = 'b5afc37c04e670dc17f68727f92ea21c';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
_hmt.unshift(['_setAccount', _hmt_id]);
|
|
||||||
|
|
||||||
var helloWorldJS = document.getElementById('hello-world-js');
|
|
||||||
var hm = document.createElement('script');
|
|
||||||
hm.src = '//hm.baidu.com/hm.js?' + _hmt_id;
|
|
||||||
helloWorldJS.parentNode.insertBefore(hm, helloWorldJS);
|
|
||||||
|
|
||||||
}, 1500);
|
|
44
package.json
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
{
|
||||||
|
"name": "home",
|
||||||
|
"author": "imsyy",
|
||||||
|
"github": "https://github.com/imsyy/home",
|
||||||
|
"home": "https://imsyy.top",
|
||||||
|
"private": true,
|
||||||
|
"version": "4.1.4",
|
||||||
|
"type": "module",
|
||||||
|
"scripts": {
|
||||||
|
"dev": "vite --host",
|
||||||
|
"build": "vite build",
|
||||||
|
"preview": "vite preview",
|
||||||
|
"format": "prettier --write src/",
|
||||||
|
"lint": "eslint . --ext .js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts,.vue --fix"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@worstone/vue-aplayer": "^1.0.6",
|
||||||
|
"aplayer": "^1.10.1",
|
||||||
|
"axios": "^1.6.8",
|
||||||
|
"dayjs": "^1.11.10",
|
||||||
|
"element-plus": "^2.7.1",
|
||||||
|
"fetch-jsonp": "^1.3.0",
|
||||||
|
"pinia": "^2.1.7",
|
||||||
|
"pinia-plugin-persistedstate": "^3.2.1",
|
||||||
|
"swiper": "^11.1.1",
|
||||||
|
"vue": "^3.4.24"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@icon-park/vue-next": "^1.4.2",
|
||||||
|
"@vicons/fa": "^0.12.0",
|
||||||
|
"@vicons/utils": "^0.1.4",
|
||||||
|
"@vitejs/plugin-vue": "^4.6.2",
|
||||||
|
"eslint": "^8.57.0",
|
||||||
|
"eslint-plugin-vue": "^9.25.0",
|
||||||
|
"prettier": "^3.2.5",
|
||||||
|
"sass": "^1.75.0",
|
||||||
|
"terser": "^5.30.4",
|
||||||
|
"unplugin-auto-import": "^0.11.5",
|
||||||
|
"unplugin-vue-components": "^0.22.12",
|
||||||
|
"vite": "^4.5.3",
|
||||||
|
"vite-plugin-compression": "^0.5.1",
|
||||||
|
"vite-plugin-pwa": "^0.14.7"
|
||||||
|
}
|
||||||
|
}
|
5112
pnpm-lock.yaml
Normal file
BIN
public/font/Pacifico-Regular-all.ttf
Normal file
3
public/font/README.md
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
## Logo 字体替换
|
||||||
|
|
||||||
|
可将该文件夹下的 `Pacifico-Regular-all.ttf` 替换原来的 `Pacifico-Regular.ttf`
|
BIN
public/images/background1.jpg
Normal file
After Width: | Height: | Size: 51 KiB |
BIN
public/images/background10.jpg
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
public/images/background2.jpg
Normal file
After Width: | Height: | Size: 93 KiB |
BIN
public/images/background3.jpg
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
public/images/background4.jpg
Normal file
After Width: | Height: | Size: 95 KiB |
BIN
public/images/background5.jpg
Normal file
After Width: | Height: | Size: 138 KiB |
BIN
public/images/background6.jpg
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
public/images/background7.jpg
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
public/images/background8.jpg
Normal file
After Width: | Height: | Size: 92 KiB |
BIN
public/images/background9.jpg
Normal file
After Width: | Height: | Size: 56 KiB |
BIN
public/images/icon/128.png
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
public/images/icon/144.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
public/images/icon/180.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
public/images/icon/192.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
public/images/icon/32.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
public/images/icon/48.png
Normal file
After Width: | Height: | Size: 4.6 KiB |
BIN
public/images/icon/512.png
Normal file
After Width: | Height: | Size: 8.9 KiB |
BIN
public/images/icon/72.png
Normal file
After Width: | Height: | Size: 7.7 KiB |
BIN
public/images/icon/96.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 5.1 KiB |
BIN
public/images/icon/bilibili.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 5.4 KiB |
BIN
public/images/icon/email.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
Before Width: | Height: | Size: 264 KiB After Width: | Height: | Size: 264 KiB |
BIN
public/images/icon/gitee.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
public/images/icon/github.png
Normal file
After Width: | Height: | Size: 4.1 KiB |
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 5.1 KiB |