├── .gitignore ├── LICENSE ├── README.md ├── README_EN.md ├── ads.txt ├── css ├── animation.css ├── lantern.css ├── loading.css ├── mobile.css └── style.css ├── favicon.ico ├── font ├── MiSans-Regular.subset.ttf ├── MiSans-Regular.subset.woff2 ├── MiSans-Regular.woff2 ├── Pacifico-Regular.ttf └── UnidreamLED.ttf ├── img ├── background1.webp ├── background10.webp ├── background2.webp ├── background3.webp ├── background4.webp ├── background5.webp ├── background6.webp ├── background7.webp ├── background8.webp ├── background9.webp └── icon │ ├── 128.png │ ├── 144.png │ ├── 180.png │ ├── 192.png │ ├── 32.png │ ├── 48.png │ ├── 512.png │ ├── 72.png │ ├── 96.png │ ├── apple-touch-icon.png │ ├── avatar.jpg │ ├── candle.png │ ├── favicon.ico │ ├── logo.png │ ├── music.png │ ├── pause.png │ ├── play.png │ └── warn.png ├── index.html ├── js ├── 51LA.js ├── js.cookie.js ├── lantern.js ├── main.js ├── music.js ├── set.js └── time.js ├── manifest.json ├── setting.json ├── sw.js ├── upgrade-your-browser ├── css │ └── support.style.min.css ├── end-of-ie-support │ ├── css │ │ └── support.style.min.css │ ├── index.html │ └── js │ │ └── er3eport.min.js ├── favicon.ico ├── images │ ├── chrome.png │ ├── edge.png │ ├── firefox.png │ ├── qqbrowser.png │ ├── safari.png │ └── se360.png ├── index.html └── js │ ├── er3eport.min.js │ └── main.min.js └── vercel.json /.gitignore: -------------------------------------------------------------------------------- 1 | /.vscode/* -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 imsyy 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 简体中文 | [English](./README_EN.md) 2 | 3 |

4 |

Aurora

5 | 简单的小主页,原来的看够了,重新弄了一个 6 |

7 | 8 | ![Auroraの主页](https://s2.loli.net/2022/07/14/K5JigfvDoNewtuS.webp) 9 | 10 | >主页的 Logo 字体已经过压缩,若用本站 Logo 以外的字母会变回默认字体,这里是 [完整字体](https://file.imsyy.top/font/Pacifico-Regular.ttf) 11 | 12 | ### Demo 13 | 14 | >由于 CDN 缓存原因,查看最新效果可能需要 `Ctrl` + `F5` 强制刷新浏览器缓存 15 | 16 | - [Auroraの主页](http://www.wuhobin.top) 17 | 18 | 19 | ### 功能 20 | 21 | - [x] 载入动画 22 | - [x] 站点简介 23 | - [x] Hitokoto 一言 24 | - [x] 日期及时间 25 | - [x] 实时天气 26 | - [x] 时光进度条 27 | - [x] 音乐播放器 28 | - [x] 移动端适配 29 | 30 | * [ ] 去除 jQuery 依赖 31 | * [ ] VUE 重构 32 | 33 | ### 天气 34 | 35 | 由于原天气 API 不稳定,已更换天气 API,现需要前往以下网站获取 key 36 | 37 | - 前往 [ROLL](https://www.mxnzp.com/doc/list) 获取 app_id 和 app_secret,用于获取城市信息 38 | - 前往 [和风天气](https://dev.qweather.com/) 获取 key,用于获取天气信息 39 | 40 | 也可自行更换其他方式 41 | 42 | 94 | 95 | ### 音乐 96 | 97 | >本项目采用了基于 `MetingJS` 的 `Aplayer` 音乐播放器,可实现快速自定义歌单 98 | >*仅支持 **中国大陆地区**,其他区域请将 [以下内容](https://cdn.jsdelivr.net/gh/imsyy/file/js/music/music-other.js) 替换 `music.js` 以实现音乐播放器的正常使用 99 | 100 | 更改 `music.js` 的参数即可实现自定义歌单列表 101 | 102 | ```js 103 | let server = "netease"; //netease: 网易云音乐; tencent: QQ音乐; kugou: 酷狗音乐; xiami: 虾米; kuwo: 酷我 104 | let type = "playlist"; //song: 单曲; playlist: 歌单; album: 唱片 105 | let id = "7452421335"; //封面 ID / 单曲 ID / 歌单 ID 106 | ``` 107 | 108 | ### 字体 109 | 110 | 现采用 `HarmonyOS Sans` 开源字体,采用字体拆分,提升加载速度 111 | 112 | >由于本站 `CDN` 已开启防盗链,**非本站域名不可访问**,请将字体引入链接更改为下方内容,否则 **自定义字体将失效** 113 | > 114 | >`https://s1.hdslb.com/bfs/static/jinkela/long/font/regular.css` 115 | 116 |
117 | 旧版方式 118 | 119 | >由于本项目引入了中文字体,需要压缩中文字体以提高网页加载速度( 也可以取消使用中文字体 ) 120 | 121 | #### 中文字体去除繁体 122 | 123 | - 安装 `Python 3.7` 和 `pip` 124 | - 运行 `pip install fonttools` 125 | - 下载 [sc_unicode.txt](https://gist.githubusercontent.com/imaegoo/d64e5088b723c2e02c40985f55ff12db/raw/5ebd2ce49418c73459a9dfe050483409306a6c1d/sc_unicode.txt) 126 | - 运行 `pyftsubset 字体名称.ttf --unicodes-file=sc_unicode.txt` 127 | 128 | #### 字体进一步压缩 129 | 130 | - 编译安装 `Google woff2` 131 | 132 | ```bash 133 | sudo apt-get install -y git g++ make 134 | git clone --recursive https://github.com/google/woff2.git 135 | cd woff2 136 | make clean all 137 | ``` 138 | 139 | - 再压缩字体 140 | 141 | ``` 142 | ./woff2_compress ./字体名称.ttf 143 | ``` 144 | 145 | - 最终可对原字体进行缓加载,**先行加载压缩后的字体** 146 | 147 | >详细信息可前往 [虹墨空间站](https://www.imaegoo.com/2020/chinese-font-compress/) 查看原文 148 | 149 |
150 | 151 | ### 插件 152 | 153 | * [Bootstrap](https://getbootstrap.com/) 154 | * [iziToast](https://izitoast.marcelodolza.com/) 155 | * [Font Awesome](https://fontawesome.com/) 156 | * [jQuery](https://jquery.com/) 157 | * [Aplayer](https://aplayer.js.org/) 158 | 159 | ### API 160 | 161 | * [MetingAPI By 武恩赐](https://api.wuenci.com/meting/api/) 162 | * [小歪 API](https://api.ixiaowai.cn/) 163 | * [和风天气](https://dev.qweather.com/) 164 | * [ROLL](https://www.mxnzp.com/doc/list) 165 | * [Hitokoto 一言](https://hitokoto.cn/) 166 | 167 |    168 | -------------------------------------------------------------------------------- /README_EN.md: -------------------------------------------------------------------------------- 1 | English | [Chinese](./README.md) 2 | 3 |

4 |

Auroraの主页

5 | Simple little homepage, had enough of the original one and made a new one 6 |

7 | 8 | ![Auroraの主页](https://s2.loli.net/2022/07/14/K5JigfvDoNewtuS.webp) 9 | 10 | >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.imsyy.top/font/Pacifico-Regular.ttf) 11 | 12 | ### Demo 13 | 14 | >Due to CDN caching, you may need `Ctrl` + `F5` to force a browser cache refresh to see the latest results 15 | 16 | - [Auroraの主页](http://www.wuhobin.top) 17 | 18 | 19 | ### Functions 20 | 21 | - [x] Loading animation 22 | - [x] Site description 23 | - [x] Hitokoto 24 | - [x] Date and time 25 | - [x] Live weather 26 | - [x] Time progress bar 27 | - [x] Music player 28 | - [x] Mobile adaptation 29 | 30 | * [ ] Remove jQuery dependency 31 | * [ ] VUE refactoring 32 | 33 | ### Weather 34 | 35 | Because the original weather API is unstable, the weather API has been replaced. Now you need to go to the following website to obtain the key 36 | 37 | - to [ROLL] (https://www.mxnzp.com/doc/list) for app_id and app_secret, used to capture the city 38 | 39 | - to [and wind weather] (https://dev.qweather.com/) to obtain the key, is used to get the weather information 40 | 41 | It can also be replaced by other methods 42 | 43 | 95 | 96 | ### Music 97 | 98 | >This project uses the `Aplayer` music player based on `MetingJS` for quick song list customization 99 | >*Only supported in **Mainland China**, please replace `music.js` with [the following](https://cdn.jsdelivr.net/gh/imsyy/file/js/music/music-other.js) in other regions to enable the music player to work properly 100 | 101 | Change the parameters of `music.js` to achieve a custom song list 102 | 103 | ```js 104 | let server = "netease"; //netease; tencent; kugou; xiami; kuwo; 105 | let type = "playlist"; //song; playlist; album; 106 | let id = "7452421335"; //album ID; song ID; playlist ID; 107 | ``` 108 | 109 | ### Fonts 110 | 111 | Now using `HarmonyOS Sans` open source font, using font splitting to improve loading speed 112 | 113 | >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** 114 | > 115 | >`https://cdn.jsdelivr.net/gh/imsyy/file/font/HarmonyOS_Sans/regular.min.css` 116 | 117 |
118 | old way 119 | 120 | >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) 121 | 122 | #### Chinese font removal traditional 123 | 124 | - Install `Python 3.7` and `pip` 125 | - Run `pip install fonttools` 126 | - Download [sc_unicode.txt](https://gist.githubusercontent.com/imaegoo/d64e5088b723c2e02c40985f55ff12db/raw/5ebd2ce49418c73459a9dfe050483409306a6c1d/sc_unicode.txt) 127 | - Run `pyftsubset font-name.ttf --unicodes-file=sc_unicode.txt` 128 | 129 | #### fonts further compressed 130 | 131 | - Compile and install ``Google woff2`` 132 | 133 | ```bash 134 | sudo apt-get install -y git g++ make 135 | git clone --recursive https://github.com/google/woff2.git 136 | cd woff2 137 | make clean all 138 | ``` 139 | 140 | - Compress the font again 141 | 142 | ``` 143 | . /woff2_compress . /font_name.ttf 144 | ``` 145 | 146 | - Eventually the original font can be slow loaded, **load the compressed font first** 147 | 148 | >For more information, please go to [虹墨空间站](https://www.imaegoo.com/2020/chinese-font-compress/) to view the original article 149 | 150 |
151 | 152 | ### Plugins 153 | 154 | * [Bootstrap](https://getbootstrap.com/) 155 | * [iziToast](https://izitoast.marcelodolza.com/) 156 | * [Font Awesome](https://fontawesome.com/) 157 | * [jQuery](https://jquery.com/) 158 | * [Aplayer](https://aplayer.js.org/) 159 | 160 | ### API 161 | 162 | * [MetingAPI By wuenci](https://api.wuenci.com/meting/api/) 163 | * [小歪 API](https://api.ixiaowai.cn/) 164 | * [和风天气](https://dev.qweather.com/) 165 | * [ROLL](https://www.mxnzp.com/doc/list) 166 | * [Hitokoto 一言](https://hitokoto.cn/) 167 | 168 |    169 | -------------------------------------------------------------------------------- /ads.txt: -------------------------------------------------------------------------------- 1 | google.com, pub-6485978929300499, DIRECT, f08c47fec0942fa0 -------------------------------------------------------------------------------- /css/animation.css: -------------------------------------------------------------------------------- 1 | /*模糊渐入动画*/ 2 | @keyframes fade-in { 3 | 0% { 4 | opacity: 0; 5 | backdrop-filter: blur(0px); 6 | } 7 | 8 | 100% { 9 | opacity: 1; 10 | backdrop-filter: blur(10px); 11 | } 12 | } 13 | 14 | @-webkit-keyframes fade-in { 15 | 0% { 16 | opacity: 0; 17 | backdrop-filter: blur(0px); 18 | } 19 | 20 | 100% { 21 | opacity: 1; 22 | backdrop-filter: blur(10px); 23 | } 24 | } 25 | 26 | @-moz-keyframes fade-in { 27 | 0% { 28 | opacity: 0; 29 | backdrop-filter: blur(0px); 30 | } 31 | 32 | 100% { 33 | opacity: 1; 34 | backdrop-filter: blur(10px); 35 | } 36 | } 37 | 38 | @-o-keyframes fade-in { 39 | 0% { 40 | opacity: 0; 41 | backdrop-filter: blur(0px); 42 | } 43 | 44 | 100% { 45 | opacity: 1; 46 | backdrop-filter: blur(10px); 47 | } 48 | } 49 | 50 | /*渐入动画*/ 51 | @keyframes fade { 52 | 0% { 53 | opacity: 0; 54 | } 55 | 56 | 100% { 57 | opacity: 1; 58 | } 59 | } 60 | 61 | @-webkit-keyframes fade { 62 | 0% { 63 | opacity: 0; 64 | } 65 | 66 | 100% { 67 | opacity: 1; 68 | } 69 | } 70 | 71 | @-moz-keyframes fade { 72 | 0% { 73 | opacity: 0; 74 | } 75 | 76 | 100% { 77 | opacity: 1; 78 | } 79 | } 80 | 81 | @-o-keyframes fade { 82 | 0% { 83 | opacity: 0; 84 | } 85 | 86 | 100% { 87 | opacity: 1; 88 | } 89 | } -------------------------------------------------------------------------------- /css/lantern.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | 3 | .lantern__warpper { 4 | position: fixed; 5 | top: 12px; 6 | left: 40px; 7 | pointer-events: none; 8 | -webkit-user-select: none; 9 | -moz-user-select: none; 10 | -ms-user-select: none; 11 | user-select: none; 12 | z-index: 999 13 | } 14 | 15 | .lantern__warpper.lantern__secondary { 16 | left: calc(100% - 130px) 17 | } 18 | 19 | .lantern__warpper.lantern__secondary .lantern__box { 20 | -webkit-animation-duration: 3s; 21 | animation-duration: 3s 22 | } 23 | 24 | .lantern__box { 25 | position: relative; 26 | display: inline-block; 27 | width: 90px; 28 | height: 70px; 29 | background: rgba(216, 0, 15, .8); 30 | border-radius: 50% 50%; 31 | animation: lantern-swing 3s ease-in-out infinite alternate-reverse; 32 | -webkit-transform-origin: 50% -70px; 33 | -ms-transform-origin: 50% -70px; 34 | transform-origin: 50% -70px; 35 | -webkit-box-shadow: -5px 5px 50px 4px #fa6c00; 36 | box-shadow: -5px 5px 50px 4px #fa6c00 37 | } 38 | 39 | .lantern__box:after, 40 | .lantern__box:before { 41 | content: ""; 42 | position: absolute; 43 | height: 8px; 44 | width: 45px; 45 | left: 50%; 46 | border: 1px solid #dc8f03; 47 | background: -webkit-gradient(linear, left top, right top, from(#dc8f03), color-stop(orange), color-stop(#dc8f03), color-stop(orange), to(#dc8f03)); 48 | background: -o-linear-gradient(left, #dc8f03, orange, #dc8f03, orange, #dc8f03); 49 | background: linear-gradient(90deg, #dc8f03, orange, #dc8f03, orange, #dc8f03) 50 | } 51 | 52 | .lantern__box:before { 53 | top: 0; 54 | border-radius: 5px 5px 0 0; 55 | -webkit-transform: translate(-50%, -50%); 56 | -ms-transform: translate(-50%, -50%); 57 | transform: translate(-50%, -50%) 58 | } 59 | 60 | .lantern__box:after { 61 | bottom: 0; 62 | border-radius: 0 0 5px 5px; 63 | -webkit-transform: translate(-50%, 50%); 64 | -ms-transform: translate(-50%, 50%); 65 | transform: translate(-50%, 50%) 66 | } 67 | 68 | .lantern__line { 69 | position: absolute; 70 | width: 2px; 71 | height: 12px; 72 | top: 0; 73 | left: 50%; 74 | -webkit-transform: translate(-50%, -100%); 75 | -ms-transform: translate(-50%, -100%); 76 | transform: translate(-50%, -100%); 77 | background: #dc8f03 78 | } 79 | 80 | .lantern__circle { 81 | width: 80%; 82 | -webkit-box-sizing: border-box; 83 | box-sizing: border-box 84 | } 85 | 86 | .lantern__circle, 87 | .lantern__circle .lantern__ellipse { 88 | height: 100%; 89 | margin: 0 auto; 90 | border-radius: 50%; 91 | border: 2px solid #dc8f03 92 | } 93 | 94 | .lantern__circle .lantern__ellipse { 95 | width: 50% 96 | } 97 | 98 | .lantern__circle .lantern__text { 99 | font-family: 华文行楷, Microsoft YaHei, sans-serif; 100 | font-size: 24.3px; 101 | color: #dc8f03; 102 | font-weight: 700; 103 | line-height: 66px; 104 | text-align: center 105 | } 106 | 107 | .lantern__tail { 108 | position: relative; 109 | width: 4px; 110 | height: 12px; 111 | margin: 0 auto; 112 | animation: lantern-swing 3s ease-in-out infinite alternate-reverse; 113 | background: orange; 114 | border-radius: 0 0 5px 5px 115 | } 116 | 117 | .lantern__tail .lantern__junction { 118 | position: absolute; 119 | top: 0; 120 | left: 50%; 121 | width: 8px; 122 | height: 8px; 123 | -webkit-transform: translate(-50%, 8.4px); 124 | -ms-transform: translate(-50%, 8.4px); 125 | transform: translate(-50%, 8.4px); 126 | background: #e69603; 127 | border-radius: 50% 128 | } 129 | 130 | .lantern__tail .lantern__rect { 131 | position: absolute; 132 | top: 0; 133 | left: 50%; 134 | -webkit-transform: translate(-50%, 10.8px); 135 | -ms-transform: translate(-50%, 10.8px); 136 | transform: translate(-50%, 10.8px); 137 | width: 8px; 138 | height: 24px; 139 | background: orange; 140 | border-radius: 5px 5px 0 5px 141 | } 142 | 143 | @-webkit-keyframes lantern-swing { 144 | 0% { 145 | -webkit-transform: rotate(-8deg); 146 | transform: rotate(-8deg) 147 | } 148 | 149 | to { 150 | -webkit-transform: rotate(8deg); 151 | transform: rotate(8deg) 152 | } 153 | } 154 | 155 | @keyframes lantern-swing { 156 | 0% { 157 | -webkit-transform: rotate(-8deg); 158 | transform: rotate(-8deg) 159 | } 160 | 161 | to { 162 | -webkit-transform: rotate(8deg); 163 | transform: rotate(8deg) 164 | } 165 | } 166 | 167 | @media (max-width:460px) { 168 | .lantern__warpper { 169 | top: 8px; 170 | left: 30px 171 | } 172 | 173 | .lantern__warpper.lantern__secondary { 174 | left: calc(100% - 80px) 175 | } 176 | 177 | .lantern__box { 178 | width: 50px; 179 | height: 40px; 180 | -webkit-transform-origin: 50% -40px; 181 | -ms-transform-origin: 50% -40px; 182 | transform-origin: 50% -40px; 183 | -webkit-box-shadow: -5px 5px 50px -1px #fa6c00; 184 | box-shadow: -5px 5px 50px -1px #fa6c00 185 | } 186 | 187 | .lantern__box:after, 188 | .lantern__box:before { 189 | height: 4px; 190 | width: 25px 191 | } 192 | 193 | .lantern__line { 194 | width: 2px; 195 | height: 8px 196 | } 197 | 198 | .lantern__circle .lantern__text { 199 | font-size: 13.5px; 200 | line-height: 38px 201 | } 202 | 203 | .lantern__tail { 204 | width: 4px; 205 | height: 8px 206 | } 207 | 208 | .lantern__tail .lantern__junction { 209 | width: 8px; 210 | height: 8px; 211 | -webkit-transform: translate(-50%, 5.6px); 212 | -ms-transform: translate(-50%, 5.6px); 213 | transform: translate(-50%, 5.6px) 214 | } 215 | 216 | .lantern__tail .lantern__rect { 217 | -webkit-transform: translate(-50%, 7.2px); 218 | -ms-transform: translate(-50%, 7.2px); 219 | transform: translate(-50%, 7.2px); 220 | width: 8px; 221 | height: 16px 222 | } 223 | } 224 | 225 | @media screen and (max-width:720px) { 226 | .lantern__warpper { 227 | display: none; 228 | } 229 | } -------------------------------------------------------------------------------- /css/loading.css: -------------------------------------------------------------------------------- 1 | #loading-box .loading-left-bg, 2 | #loading-box .loading-right-bg { 3 | position: fixed; 4 | z-index: 999998; 5 | width: 50%; 6 | height: 100%; 7 | background-color: rgb(81 81 81 / 80%); 8 | transition: all 0.7s cubic-bezier(0.42, 0, 0, 1.01); 9 | backdrop-filter: blur(10px); 10 | } 11 | 12 | #loading-box .loading-right-bg { 13 | right: 0; 14 | } 15 | 16 | #loading-box>.spinner-box { 17 | position: fixed; 18 | z-index: 999999; 19 | display: flex; 20 | justify-content: center; 21 | align-items: center; 22 | width: 100%; 23 | height: 100vh; 24 | } 25 | 26 | #loading-box .spinner-box .loading-word { 27 | position: absolute; 28 | color: #ffffff; 29 | font-size: 0.95rem; 30 | transform: translateY(64px); 31 | text-align: center; 32 | } 33 | 34 | p.loading-title { 35 | font-size: 1.25rem; 36 | margin: 20px 10px 4px 10px; 37 | } 38 | 39 | #loading-box .spinner-box .configure-core { 40 | width: 100%; 41 | height: 100%; 42 | background-color: #37474f; 43 | } 44 | 45 | div.loaded div.loading-left-bg { 46 | transform: translate(-100%, 0); 47 | } 48 | 49 | div.loaded div.loading-right-bg { 50 | transform: translate(100%, 0); 51 | } 52 | 53 | div.loaded div.spinner-box { 54 | display: none !important; 55 | } 56 | 57 | .loader { 58 | position: absolute; 59 | top: calc(50% - 32px); 60 | left: calc(50% - 32px); 61 | width: 64px; 62 | height: 64px; 63 | border-radius: 50%; 64 | perspective: 800px; 65 | transition: all 0.7s cubic-bezier(0.42, 0, 0, 1.01); 66 | } 67 | 68 | .inner { 69 | position: absolute; 70 | box-sizing: border-box; 71 | width: 100%; 72 | height: 100%; 73 | border-radius: 50%; 74 | } 75 | 76 | .inner.one { 77 | left: 0%; 78 | top: 0%; 79 | animation: rotate-one 1s linear infinite; 80 | border-bottom: 3px solid #EFEFFA; 81 | } 82 | 83 | .inner.two { 84 | right: 0%; 85 | top: 0%; 86 | animation: rotate-two 1s linear infinite; 87 | border-right: 3px solid #EFEFFA; 88 | } 89 | 90 | .inner.three { 91 | right: 0%; 92 | bottom: 0%; 93 | animation: rotate-three 1s linear infinite; 94 | border-top: 3px solid #EFEFFA; 95 | } 96 | 97 | @keyframes rotate-one { 98 | 0% { 99 | transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); 100 | } 101 | 102 | 100% { 103 | transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); 104 | } 105 | } 106 | 107 | @keyframes rotate-two { 108 | 0% { 109 | transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); 110 | } 111 | 112 | 100% { 113 | transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); 114 | } 115 | } 116 | 117 | @keyframes rotate-three { 118 | 0% { 119 | transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); 120 | } 121 | 122 | 100% { 123 | transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); 124 | } 125 | } -------------------------------------------------------------------------------- /css/mobile.css: -------------------------------------------------------------------------------- 1 | @charset "utf-8"; 2 | 3 | /*小于1400px时*/ 4 | @media (max-width: 1400px) {} 5 | 6 | /*小于1200px时*/ 7 | @media (max-width: 1200px) { 8 | 9 | /*总布局*/ 10 | .container, 11 | .container-lg, 12 | .container-md, 13 | .container-sm { 14 | max-width: 1000px !important; 15 | } 16 | 17 | .weekday { 18 | display: none; 19 | } 20 | 21 | /*音乐播放器*/ 22 | .music-text { 23 | max-width: 170px !important; 24 | } 25 | } 26 | 27 | /*小于992px时*/ 28 | @media (max-width: 992px) { 29 | 30 | /*总布局*/ 31 | .container, 32 | .container-lg, 33 | .container-md, 34 | .container-sm { 35 | max-width: 900px !important; 36 | } 37 | 38 | .col.left { 39 | margin-right: 0.75rem; 40 | } 41 | 42 | .col.right { 43 | margin-left: 0.75rem; 44 | } 45 | 46 | /*一言*/ 47 | .col.hitokotos { 48 | display: none; 49 | } 50 | 51 | /*时间卡片*/ 52 | .col.times { 53 | margin-left: 0rem; 54 | } 55 | 56 | /*日期显示*/ 57 | .weekday { 58 | display: inline; 59 | } 60 | 61 | /*标题文字*/ 62 | .main-img img { 63 | width: 110px; 64 | } 65 | 66 | span.img-title { 67 | font-size: 4.75rem; 68 | } 69 | 70 | span.img-text { 71 | font-size: 1.75rem; 72 | } 73 | 74 | /*链接卡片文字*/ 75 | span.link-name { 76 | display: none !important; 77 | } 78 | 79 | .link-card i { 80 | margin-left: 10px !important; 81 | margin-right: 10px !important; 82 | } 83 | } 84 | 85 | /*小于840px时*/ 86 | @media (max-width: 840px) { 87 | 88 | 89 | /*社交链接*/ 90 | .social { 91 | max-width: 100%; 92 | justify-content: center; 93 | } 94 | 95 | #link-text { 96 | display: none !important; 97 | } 98 | 99 | .link i { 100 | margin: 0px 20px; 101 | } 102 | } 103 | 104 | /*小于789px时*/ 105 | @media (max-width: 789px) { 106 | 107 | /*标题文字*/ 108 | span.img-text { 109 | display: none; 110 | } 111 | } 112 | 113 | /*小于768px时*/ 114 | @media (max-width: 768px) { 115 | 116 | /*标题文字*/ 117 | .main-img img { 118 | width: 100px; 119 | } 120 | 121 | span.img-title { 122 | font-size: 4.5rem; 123 | } 124 | } 125 | 126 | /*小于720px时*/ 127 | @media (max-width: 720px) { 128 | 129 | /*左侧栏高度*/ 130 | .main-left { 131 | transform: translateY(20px); 132 | } 133 | 134 | /*左侧栏边距*/ 135 | .col.left { 136 | margin-right: 0rem; 137 | } 138 | 139 | /*右侧栏隐藏*/ 140 | .col.right { 141 | display: none; 142 | } 143 | 144 | /*右侧栏边距*/ 145 | .col.right { 146 | margin-left: 0rem; 147 | } 148 | 149 | /*标题文字*/ 150 | span.img-text { 151 | display: inline; 152 | } 153 | 154 | /*简介*/ 155 | .message { 156 | max-width: 100%; 157 | pointer-events: none; 158 | } 159 | 160 | /* 161 | .des { 162 | justify-content: space-between; 163 | } 164 | */ 165 | 166 | /*链接卡片*/ 167 | .link-card { 168 | height: 80px !important; 169 | align-items: center !important; 170 | flex-direction: column !important; 171 | justify-content: center !important; 172 | } 173 | 174 | .link-card i { 175 | font-size: 1.25rem; 176 | margin: 4px 0px; 177 | } 178 | 179 | i.iconfont.icon-a-daohangzhiyindingwei-05, 180 | i.iconfont.icon-z_shangpinheji { 181 | font-size: 1.65rem; 182 | } 183 | 184 | span.link-name { 185 | display: block !important; 186 | font-size: 0.85rem; 187 | } 188 | 189 | .link-card:hover span.link-name { 190 | font-size: 0.95rem; 191 | } 192 | 193 | span.line-text, 194 | i.iconfont.icon-link { 195 | font-size: 1.05rem; 196 | } 197 | 198 | /*菜单栏按钮*/ 199 | .menu { 200 | display: flex; 201 | justify-content: center; 202 | position: fixed; 203 | top: 84%; 204 | } 205 | 206 | .munu-button { 207 | padding: 5px 20px; 208 | background: rgb(0 0 0 / 20%); 209 | backdrop-filter: blur(10px); 210 | border-radius: 6px; 211 | font-size: 1.25rem; 212 | transition: 0.5s; 213 | width: 60px; 214 | display: flex; 215 | justify-content: center; 216 | align-items: center; 217 | height: 40px; 218 | } 219 | 220 | /*页脚文字*/ 221 | footer { 222 | font-size: 0.85rem; 223 | } 224 | 225 | /*一言*/ 226 | .col.hitokotos { 227 | margin-right: 0rem; 228 | } 229 | 230 | .hitokoto-text, 231 | .hitokoto-from { 232 | font-size: 1.05rem; 233 | } 234 | 235 | /*音乐播放器*/ 236 | .music-text { 237 | max-width: 100% !important; 238 | } 239 | 240 | #music-name { 241 | font-size: 1.05rem; 242 | } 243 | 244 | #music-open { 245 | display: none; 246 | } 247 | 248 | /*隐藏鼠标样式*/ 249 | #cursor { 250 | background: transparent !important; 251 | } 252 | 253 | } 254 | 255 | /*小于512px时*/ 256 | @media (max-width: 512px) { 257 | #made { 258 | display: none; 259 | } 260 | } 261 | 262 | /*小于390px时*/ 263 | @media (max-width: 390px) { 264 | .main-img img { 265 | display: none; 266 | } 267 | 268 | #beian { 269 | display: none; 270 | } 271 | } 272 | 273 | /* 大于568px时 */ 274 | @media (min-width: 568px) { 275 | .iziToast { 276 | border-radius: 30px !important; 277 | } 278 | } 279 | 280 | 281 | /* 大于720px时 */ 282 | @media (min-width: 720px) { 283 | .menu { 284 | display: none !important; 285 | } 286 | } 287 | 288 | /* 大于992px时 */ 289 | @media (min-width: 992px) { 290 | 291 | /*时钟显示*/ 292 | span#win_text, 293 | span#win_speed { 294 | display: none; 295 | } 296 | } 297 | 298 | /* 大于1400px时 */ 299 | @media (min-width: 1400px) { 300 | 301 | /*时钟显示*/ 302 | span#win_text, 303 | span#win_speed { 304 | display: inline !important; 305 | } 306 | } 307 | 308 | 309 | /* 310 | 菜单按钮 311 | */ 312 | .menus .col.left { 313 | display: none; 314 | } 315 | 316 | .menus .col.right { 317 | display: block !important; 318 | transition: 0.5s; 319 | padding: 0rem 0.75rem; 320 | } 321 | 322 | /*功能区调整*/ 323 | .menus .col.hitokotos { 324 | display: block; 325 | } 326 | 327 | .menus .col.times { 328 | display: none; 329 | } 330 | 331 | /*边界布局*/ 332 | .menus .row { 333 | --bs-gutter-x: 0rem; 334 | } 335 | 336 | .menus .col.\32 { 337 | margin: 0 0.75rem; 338 | } 339 | 340 | .menus .logo { 341 | display: inline !important; 342 | text-align: center; 343 | position: fixed; 344 | top: 8%; 345 | font-size: 1.75rem; 346 | } 347 | 348 | /*第二屏logo*/ 349 | .logo-text { 350 | font-family: 'Pacifico-Regular' !important; 351 | } 352 | 353 | /*切换动画*/ 354 | /* 355 | .hitokoto, 356 | .time, 357 | .link-card, 358 | .message { 359 | animation: fade-in; 360 | -webkit-animation: fade-in 0.5s; 361 | -moz-animation: fade-in 0.5s; 362 | -o-animation: fade-in 0.5s; 363 | -ms-animation: fade-in 0.5s; 364 | } 365 | */ 366 | .logo, 367 | .line, 368 | .main-img, 369 | .social, 370 | .close, 371 | .hitokoto, 372 | .time, 373 | .link-card, 374 | .message, 375 | #link-text { 376 | animation: fade 0.5; 377 | -webkit-animation: fade 0.5s; 378 | -moz-animation: fade 0.5s; 379 | -o-animation: fade 0.5s; 380 | -ms-animation: fade 0.5s; 381 | } 382 | 383 | /* 384 | 移动端功能区切换 385 | */ 386 | .mobile .col.hitokotos { 387 | display: none; 388 | } 389 | 390 | .mobile .col.times { 391 | display: block; 392 | } -------------------------------------------------------------------------------- /css/style.css: -------------------------------------------------------------------------------- 1 | /* 2 | 作者: imsyy 3 | 主页:https://www.imsyy.top/ 4 | GitHub:https://github.com/imsyy/home 5 | 版权所有,请勿删除 6 | */ 7 | 8 | @charset "utf-8"; 9 | 10 | /* @font-face { 11 | font-family: "MiSans"; 12 | font-style: normal; 13 | font-weight: 400; 14 | font-display: swap; 15 | src: url('../font/MiSans-Regular.subset.woff2') format('woff2'); 16 | } */ 17 | 18 | @font-face { 19 | font-family: "Pacifico-Regular"; 20 | src: url('../font/Pacifico-Regular.ttf') format('truetype'); 21 | } 22 | 23 | @font-face { 24 | font-family: "UnidreamLED"; 25 | src: url('../font/UnidreamLED.ttf') format('truetype'); 26 | } 27 | 28 | /*全局样式*/ 29 | html, 30 | body { 31 | width: 100%; 32 | height: 100%; 33 | margin: 0; 34 | padding: 0; 35 | background-color: #333; 36 | overflow: hidden; 37 | font-family: 'HarmonyOS_Regular', sans-serif; 38 | } 39 | 40 | *, 41 | a, 42 | p { 43 | text-decoration: none; 44 | transition: 0.3s; 45 | color: #efefef; 46 | user-select: none; 47 | cursor: url("data:image/svg+xml,") 4 4, auto !important; 48 | } 49 | 50 | 51 | a:hover { 52 | color: white; 53 | } 54 | 55 | .cards { 56 | transition: 0.5s; 57 | } 58 | 59 | .cards:hover { 60 | transform: scale(1.01); 61 | transition: 0.5s; 62 | } 63 | 64 | .cards:active { 65 | transform: scale(0.95); 66 | transition: 0.5s; 67 | } 68 | 69 | .noscript { 70 | z-index: 999999; 71 | font-size: 0.95rem; 72 | text-align: center; 73 | margin: 14px 0px; 74 | } 75 | 76 | /*鼠标样式*/ 77 | #g-pointer-1 { 78 | display: none; 79 | } 80 | 81 | #g-pointer-2 { 82 | position: absolute; 83 | top: 0; 84 | left: 0; 85 | width: 18px; 86 | height: 18px; 87 | transition: 0.05s linear; 88 | pointer-events: none; 89 | background: #ffffff40; 90 | border-radius: 50%; 91 | z-index: 9999999; 92 | } 93 | 94 | /*背景*/ 95 | .bg-all { 96 | z-index: -1; 97 | position: absolute; 98 | top: calc(0px + 0px); 99 | left: 0; 100 | width: 100%; 101 | height: calc(100% - 0px); 102 | transition: .25s; 103 | } 104 | 105 | #bg { 106 | transform: scale(1.10); 107 | filter: blur(10px); 108 | position: fixed; 109 | left: 0; 110 | top: 0; 111 | width: 100%; 112 | height: 100%; 113 | object-fit: cover; 114 | transition: opacity 1s, transform .25s, filter .25s; 115 | backface-visibility: hidden; 116 | } 117 | 118 | img.error { 119 | display: none; 120 | } 121 | 122 | .cover { 123 | opacity: 0; 124 | position: fixed; 125 | left: 0; 126 | top: 0; 127 | width: 100%; 128 | height: 100%; 129 | background-image: radial-gradient(rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, .5) 100%), radial-gradient(rgba(0, 0, 0, 0) 33%, rgba(0, 0, 0, .3) 166%); 130 | transition: .25s; 131 | } 132 | 133 | /*页面样式*/ 134 | section { 135 | display: block; 136 | position: fixed; 137 | width: 100%; 138 | height: 100%; 139 | min-height: 600px; 140 | transform: scale(1.10); 141 | transition: ease 1.25s; 142 | opacity: 0; 143 | filter: blur(10px); 144 | } 145 | 146 | main { 147 | width: 100%; 148 | height: 100%; 149 | /*background: rgb(0 0 0 / 20%);*/ 150 | display: flex; 151 | /*align-items: center;*/ 152 | } 153 | 154 | .container { 155 | width: 100%; 156 | display: flex; 157 | justify-content: space-around; 158 | } 159 | 160 | .row { 161 | align-items: center; 162 | justify-content: center; 163 | width: 100%; 164 | --bs-gutter-x: 0 !important; 165 | } 166 | 167 | .col.\32 { 168 | margin: 0 1.5rem; 169 | } 170 | 171 | .main-left { 172 | /*transform: translateY(240px);*/ 173 | transform: translateY(40px); 174 | } 175 | 176 | .row.rightone { 177 | display: flex; 178 | align-items: center; 179 | } 180 | 181 | /*头像*/ 182 | .main-img { 183 | display: flex; 184 | align-items: center; 185 | } 186 | 187 | .main-img img { 188 | border-radius: 50%; 189 | width: 120px; 190 | } 191 | 192 | .main-img img:hover { 193 | transform: rotate(360deg); 194 | } 195 | 196 | .img-title { 197 | width: 100%; 198 | margin-left: 12px; 199 | transform: translateY(-8%); 200 | } 201 | 202 | .img-title-big { 203 | font-size: 5rem; 204 | font-family: 'Pacifico-Regular' !important; 205 | } 206 | 207 | span.img-text { 208 | font-size: 2rem; 209 | font-family: 'Pacifico-Regular' !important; 210 | } 211 | 212 | /*简介*/ 213 | .message { 214 | background: rgb(0 0 0 / 25%); 215 | backdrop-filter: blur(10px); 216 | /*margin: 0.5rem;*/ 217 | padding: 1rem; 218 | border-radius: 6px; 219 | margin-top: 3.5rem; 220 | max-width: 460px; 221 | cursor: pointer; 222 | } 223 | 224 | .des { 225 | display: flex; 226 | justify-content: space-between; 227 | } 228 | 229 | .des-title { 230 | margin: 1rem 1rem; 231 | line-height: 2rem; 232 | margin-right: auto; 233 | } 234 | 235 | span#change { 236 | font-family: 'Pacifico-Regular' !important; 237 | } 238 | 239 | .fa-solid.fa-quote-right { 240 | align-self: flex-end; 241 | } 242 | 243 | /*社交链接*/ 244 | .social { 245 | margin-top: 1rem; 246 | display: flex; 247 | align-items: center; 248 | max-width: 460px; 249 | height: 42px; 250 | } 251 | 252 | .link i { 253 | font-size: 1.45rem; 254 | margin: 2px 12px; 255 | } 256 | 257 | /* 258 | .social .link i:hover { 259 | font-size: 2.5rem; 260 | } 261 | */ 262 | 263 | #link-text { 264 | display: none; 265 | flex: 1; 266 | text-align: right; 267 | margin-right: 1rem; 268 | } 269 | 270 | /*一言*/ 271 | .col.hitokotos { 272 | margin-right: 0.75rem; 273 | } 274 | 275 | .hitokoto { 276 | width: 100%; 277 | background: rgb(0 0 0 / 25%); 278 | backdrop-filter: blur(10px); 279 | padding: 20px; 280 | border-radius: 6px; 281 | height: 165px; 282 | display: flex; 283 | justify-content: center; 284 | flex-direction: column; 285 | } 286 | 287 | .hitokoto-all { 288 | margin-top: 10px; 289 | display: flex; 290 | flex-direction: column; 291 | } 292 | 293 | .hitokoto-text { 294 | font-size: 1.10rem; 295 | } 296 | 297 | #hitokoto_text { 298 | word-break: break-all; 299 | text-overflow: ellipsis; 300 | overflow: hidden; 301 | display: -webkit-box; 302 | -webkit-line-clamp: 2; 303 | -webkit-box-orient: vertical; 304 | } 305 | 306 | .hitokoto-from { 307 | margin-top: 10px; 308 | font-weight: bold; 309 | align-self: flex-end; 310 | font-size: 1.10rem; 311 | } 312 | 313 | .open-music { 314 | display: none; 315 | align-items: center; 316 | justify-content: center; 317 | background: rgb(0 0 0 / 15%); 318 | padding: 4px 0px; 319 | font-size: 0.95rem; 320 | animation: fade; 321 | -webkit-animation: fade 0.5s; 322 | -moz-animation: fade 0.5s; 323 | -o-animation: fade 0.5s; 324 | -ms-animation: fade 0.5s; 325 | } 326 | 327 | .open-music:hover { 328 | background: rgb(0 0 0 / 30%); 329 | } 330 | 331 | /*音乐播放器卡片*/ 332 | #music { 333 | display: none; 334 | } 335 | 336 | .music { 337 | width: 100%; 338 | background: rgb(0 0 0 / 25%); 339 | backdrop-filter: blur(10px); 340 | padding: 20px; 341 | border-radius: 6px; 342 | height: 165px; 343 | display: flex; 344 | justify-content: center; 345 | flex-direction: column; 346 | animation: fade; 347 | -webkit-animation: fade 0.3s; 348 | -moz-animation: fade 0.3s; 349 | -o-animation: fade 0.3s; 350 | -ms-animation: fade 0.3s; 351 | } 352 | 353 | .music-all { 354 | display: flex; 355 | flex-direction: column; 356 | align-items: center; 357 | justify-content: space-around; 358 | height: 100%; 359 | } 360 | 361 | .music-button { 362 | display: flex; 363 | align-items: center; 364 | margin-bottom: 6px; 365 | } 366 | 367 | .music-control { 368 | display: flex; 369 | flex-direction: row; 370 | align-items: center; 371 | justify-content: space-evenly; 372 | width: 100%; 373 | } 374 | 375 | .music-menu { 376 | height: 26px; 377 | display: flex; 378 | align-items: center; 379 | } 380 | 381 | .fa-solid.fa-play, 382 | .fa-solid.fa-pause { 383 | padding: 4px; 384 | font-size: 2.25rem; 385 | } 386 | 387 | #play { 388 | width: 50px; 389 | height: 50px; 390 | display: flex; 391 | justify-content: center; 392 | align-items: center; 393 | border-radius: 6px; 394 | padding: 6px 10px; 395 | } 396 | 397 | #play:hover { 398 | background: rgb(255 255 255 / 20%); 399 | } 400 | 401 | #last, 402 | #next { 403 | font-size: 1.75rem; 404 | border-radius: 6px; 405 | padding: 6px 10px; 406 | } 407 | 408 | #last:hover, 409 | #next:hover { 410 | background: rgb(255 255 255 / 20%); 411 | } 412 | 413 | #play:active, 414 | #last:active, 415 | #next:active { 416 | transform: scale(0.95); 417 | } 418 | 419 | .music-text { 420 | margin-top: 6px; 421 | font-size: 1.10rem; 422 | text-overflow: ellipsis; 423 | max-width: 220px; 424 | overflow-x: hidden; 425 | white-space: nowrap; 426 | animation: fade; 427 | -webkit-animation: fade 0.5s; 428 | -moz-animation: fade 0.5s; 429 | -o-animation: fade 0.5s; 430 | -ms-animation: fade 0.5s; 431 | } 432 | 433 | #music-open, 434 | #music-close { 435 | background: rgb(255 255 255 / 15%); 436 | padding: 2px 8px; 437 | border-radius: 6px; 438 | margin: 0px 6px; 439 | text-overflow: ellipsis; 440 | overflow-x: hidden; 441 | white-space: nowrap; 442 | } 443 | 444 | #music-open:hover, 445 | #music-close:hover { 446 | background: rgb(255 255 255 / 30%); 447 | } 448 | 449 | .music-volume { 450 | margin-top: 6px; 451 | display: flex; 452 | align-items: center; 453 | flex-direction: row; 454 | animation: fade; 455 | -webkit-animation: fade 0.5s; 456 | -moz-animation: fade 0.5s; 457 | -o-animation: fade 0.5s; 458 | -ms-animation: fade 0.5s; 459 | } 460 | 461 | #volume-ico { 462 | padding-top: 2px; 463 | margin-right: 10px; 464 | } 465 | 466 | .music-volume i { 467 | font-size: 1.25rem; 468 | } 469 | 470 | input[type=range] { 471 | -webkit-appearance: none; 472 | width: 100%; 473 | border-radius: 10px; 474 | height: 8px; 475 | background: rgb(255 255 255 / 15%); 476 | } 477 | 478 | input[type=range]::-webkit-slider-thumb, 479 | input[type=range]::-moz-range-thumb { 480 | -webkit-appearance: none; 481 | } 482 | 483 | input[type=range]::-webkit-slider-runnable-track, 484 | input[type=range]::-moz-range-track { 485 | height: 15px; 486 | border-radius: 10px; 487 | } 488 | 489 | input[type=range]:focus { 490 | outline: none; 491 | } 492 | 493 | input[type=range]::-webkit-slider-thumb { 494 | -webkit-appearance: none; 495 | height: 15px; 496 | width: 15px; 497 | background: #ffffff; 498 | border-radius: 50%; 499 | } 500 | 501 | /*时间卡片*/ 502 | .col.times { 503 | margin-left: 0.75rem; 504 | } 505 | 506 | .time { 507 | width: 100%; 508 | background: rgb(0 0 0 / 25%); 509 | backdrop-filter: blur(10px); 510 | padding: 20px; 511 | border-radius: 6px; 512 | text-align: center; 513 | display: flex; 514 | flex-direction: column; 515 | height: 165px; 516 | font-size: 1.10rem; 517 | } 518 | 519 | span.time-text { 520 | font-size: 3.25rem; 521 | letter-spacing: 2px; 522 | font-family: 'UnidreamLED' !important; 523 | } 524 | 525 | .weather { 526 | display: flex; 527 | flex-direction: row; 528 | justify-content: center; 529 | } 530 | 531 | /*分割线*/ 532 | .line { 533 | margin: 1rem 0.25rem; 534 | margin-top: 2rem; 535 | font-size: 1.10rem; 536 | display: flex; 537 | align-items: center; 538 | } 539 | 540 | span.line-text { 541 | font-size: 1.2rem; 542 | margin: 0px 6px; 543 | } 544 | 545 | i.iconfont.icon-link { 546 | font-size: 1.2rem; 547 | } 548 | 549 | /*链接卡片*/ 550 | .link-card { 551 | height: 100px; 552 | width: 100%; 553 | border-radius: 6px; 554 | background: rgb(0 0 0 / 25%); 555 | backdrop-filter: blur(10px); 556 | display: flex; 557 | align-items: center; 558 | flex-direction: row; 559 | justify-content: center; 560 | } 561 | 562 | .link-card i { 563 | margin-left: 0px; 564 | font-size: 1.65rem; 565 | } 566 | 567 | .link-card:hover { 568 | background: rgb(0 0 0 / 40%); 569 | transition: 0.5s; 570 | } 571 | 572 | span.link-name { 573 | font-size: 1.1rem; 574 | } 575 | 576 | .link-card:hover span.link-name { 577 | font-size: 1.15rem; 578 | transition: 0.1s; 579 | } 580 | 581 | i.iconfont.icon-a-daohangzhiyindingwei-05, 582 | i.iconfont.icon-z_shangpinheji { 583 | font-size: 2rem; 584 | } 585 | 586 | /*更多页面*/ 587 | .more { 588 | display: none !important; 589 | width: 46%; 590 | z-index: 999; 591 | position: fixed; 592 | height: 82%; 593 | right: 4%; 594 | background: rgb(0 0 0 / 25%); 595 | backdrop-filter: blur(10px); 596 | top: 7%; 597 | border-radius: 6px; 598 | padding: 30px; 599 | } 600 | 601 | .mores .more { 602 | display: flex !important; 603 | justify-content: space-evenly; 604 | flex-direction: column; 605 | align-items: center; 606 | animation: fade; 607 | -webkit-animation: fade 0.3s; 608 | -moz-animation: fade 0.3s; 609 | -o-animation: fade 0.3s; 610 | -ms-animation: fade 0.3s; 611 | } 612 | 613 | .mores .col.right { 614 | display: none; 615 | } 616 | 617 | /*关闭按钮*/ 618 | 619 | .close { 620 | display: none; 621 | left: auto; 622 | top: 4px; 623 | right: 8px; 624 | font-size: 1.45rem; 625 | } 626 | 627 | .close:hover { 628 | transform: scale(1.2); 629 | } 630 | 631 | /*时间胶囊*/ 632 | .progress { 633 | width: 100%; 634 | height: 20px; 635 | align-items: center; 636 | background: rgb(0 0 0 / 0%) !important; 637 | backdrop-filter: blur(5px); 638 | } 639 | 640 | .progress-bar { 641 | font-family: 'UnidreamLED' !important; 642 | background-color: #efefef !important; 643 | color: rgb(86 77 89) !important; 644 | font-size: 0.95rem; 645 | height: 20px; 646 | } 647 | 648 | .date { 649 | width: 100%; 650 | } 651 | 652 | .date-text { 653 | margin: 1rem 0rem 0.5rem 0rem; 654 | } 655 | 656 | /*其他链接*/ 657 | 658 | .mores .link-card { 659 | height: 48px !important; 660 | } 661 | 662 | /*更多页面*/ 663 | .box-left { 664 | flex: 0 44%; 665 | min-width: 400px; 666 | } 667 | 668 | .box { 669 | position: fixed; 670 | left: 0; 671 | right: 0; 672 | top: 0; 673 | bottom: 0; 674 | z-index: 1996; 675 | background-color: rgba(0, 0, 0, .5); 676 | backdrop-filter: blur(20px); 677 | animation: fade 0.3s; 678 | } 679 | 680 | .box-wrapper { 681 | position: absolute; 682 | top: 50%; 683 | left: 50%; 684 | -webkit-transform: translate(-50%, -50%); 685 | transform: translate(-50%, -50%); 686 | z-index: 1997; 687 | width: 80%; 688 | height: 80%; 689 | background: rgb(255 255 255 / 40%); 690 | border-radius: 6px; 691 | -webkit-animation: fade .3s; 692 | animation: fade .3s; 693 | padding: 40px; 694 | display: flex; 695 | flex-direction: row; 696 | justify-content: space-between; 697 | } 698 | 699 | #accordion { 700 | min-width: 360px; 701 | margin-right: 40px; 702 | margin-top: 20px; 703 | margin-left: 14px; 704 | border-radius: 8px; 705 | box-shadow: 0 2px 2px 0 rgb(0 0 0 / 7%), 0 1px 5px 0 rgb(0 0 0 / 10%); 706 | } 707 | 708 | .accordion-item { 709 | background-color: transparent !important; 710 | border: none !important; 711 | } 712 | 713 | .accordion-item:first-of-type .accordion-button { 714 | border-radius: 8px; 715 | } 716 | 717 | .accordion-button { 718 | color: white !important; 719 | background-color: transparent; 720 | transition: 0.3s; 721 | 722 | } 723 | 724 | .accordion-button:focus { 725 | border-color: #ffffff26 !important; 726 | outline: none !important; 727 | box-shadow: none !important; 728 | border-radius: 8px; 729 | transition: 0.3s; 730 | } 731 | 732 | .accordion-button:not(.collapsed) { 733 | background-color: #ffffff26; 734 | border-bottom-left-radius: 0px !important; 735 | border-bottom-right-radius: 0px !important; 736 | font-weight: bold; 737 | transition: 0.3s; 738 | } 739 | 740 | .accordion-button::after { 741 | border-radius: 8px; 742 | background-image: none !important; 743 | } 744 | 745 | .accordion-body { 746 | padding: 1rem 0rem !important; 747 | background-color: #ffffff10; 748 | } 749 | 750 | .closebox { 751 | left: auto; 752 | top: 10px; 753 | right: 16px; 754 | font-size: 1.5rem; 755 | } 756 | 757 | .closebox:hover { 758 | transform: scale(1.2); 759 | } 760 | 761 | i.iconfont.icon-close, 762 | i.iconfont.icon-github1 { 763 | font-size: 1.45rem; 764 | } 765 | 766 | /*个性设置*/ 767 | .set { 768 | display: flex; 769 | flex-direction: column; 770 | padding: 0rem 1.5rem; 771 | } 772 | 773 | .btn-group, 774 | .btn-group-vertical { 775 | margin-top: 10px; 776 | } 777 | 778 | .btn-outline-primary { 779 | color: #eeeeee !important; 780 | border-color: #ffffff26 !important; 781 | } 782 | 783 | .btn-outline-primary:hover { 784 | background-color: #ffffff26 !important; 785 | border-color: #eeeeee !important; 786 | } 787 | 788 | .btn-check:focus + .btn, 789 | .btn:focus { 790 | box-shadow: none !important; 791 | } 792 | 793 | .btn-check:active + .btn-outline-primary, 794 | .btn-check:checked + .btn-outline-primary, 795 | .btn-outline-primary.active, 796 | .btn-outline-primary.dropdown-toggle.show, 797 | .btn-outline-primary:active { 798 | background-color: #ffffff26 !important; 799 | border-color: #eeeeee !important; 800 | } 801 | 802 | #wallpaper { 803 | display: flex; 804 | align-items: center; 805 | justify-content: flex-start; 806 | flex-wrap: wrap; 807 | } 808 | 809 | .form-radio { 810 | flex: 1 1 0%; 811 | width: 31.3%; 812 | min-width: 31.3%; 813 | max-width: 31.3%; 814 | text-align: center; 815 | margin: 1%; 816 | } 817 | 818 | input[type="radio"] + label { 819 | padding: 6px 10px; 820 | background: #ffffff26; 821 | border-radius: 8px; 822 | transition: 0.3s; 823 | border: 2px solid transparent; 824 | width: 100%; 825 | } 826 | 827 | input[type="radio"]:checked + label { 828 | background: #ffffff06; 829 | border: 2px solid #eeeeee; 830 | } 831 | 832 | /*更新日志*/ 833 | .upnote { 834 | display: flex; 835 | flex-direction: column; 836 | padding: 0rem 1.5rem; 837 | height: 156px; 838 | overflow-y: auto; 839 | } 840 | 841 | .uptext { 842 | line-height: 32px; 843 | } 844 | 845 | /*Aplayer*/ 846 | .box-right { 847 | flex: 0 54%; 848 | max-width: 54%; 849 | display: flex; 850 | flex-direction: row; 851 | justify-content: center; 852 | align-items: center; 853 | } 854 | 855 | .aplayer { 856 | background: transparent !important; 857 | width: 100%; 858 | border-radius: 6px !important; 859 | margin-right: 18px; 860 | font-family: 'HarmonyOS_Regular', sans-serif !important; 861 | } 862 | 863 | .aplayer.aplayer-withlrc .aplayer-pic { 864 | display: none; 865 | } 866 | 867 | .aplayer.aplayer-withlrc .aplayer-info { 868 | margin-left: 0px !important; 869 | } 870 | 871 | .aplayer.aplayer-withlrc .aplayer-info { 872 | background-color: #ffffff26; 873 | border-radius: 6px; 874 | } 875 | 876 | /*歌曲名称*/ 877 | .aplayer .aplayer-info .aplayer-music .aplayer-title { 878 | font-size: 16px !important; 879 | } 880 | 881 | /*音乐列表*/ 882 | .aplayer.aplayer-withlist .aplayer-list { 883 | margin-top: 6px; 884 | } 885 | 886 | .aplayer .aplayer-list ol li.aplayer-list-light { 887 | background: #ffffff26 !important; 888 | border-radius: 6px !important; 889 | } 890 | 891 | .aplayer .aplayer-list ol li:hover { 892 | background: #ffffff26 !important; 893 | border-radius: 6px !important; 894 | } 895 | 896 | .aplayer .aplayer-list ol li { 897 | border-top: 1px solid transparent !important; 898 | } 899 | 900 | .aplayer.aplayer-withlist .aplayer-info { 901 | border-bottom: 1px solid transparent !important; 902 | } 903 | 904 | .aplayer-list-cur { 905 | background-color: #eeeeee !important; 906 | } 907 | 908 | /*控制面板 - Bug*/ 909 | .aplayer .aplayer-info .aplayer-controller { 910 | display: none !important; 911 | } 912 | 913 | /*歌词间距*/ 914 | .aplayer .aplayer-lrc { 915 | margin: 4px 0 0px !important; 916 | height: 34px !important; 917 | } 918 | 919 | .aplayer .aplayer-lrc { 920 | text-align: left !important; 921 | margin-left: 5px !important; 922 | } 923 | 924 | /*歌词大小*/ 925 | .aplayer .aplayer-lrc p.aplayer-lrc-current { 926 | font-size: 14.5px !important; 927 | } 928 | 929 | /*全局字体颜色*/ 930 | .aplayer .aplayer-info .aplayer-music .aplayer-title, 931 | .aplayer .aplayer-info .aplayer-music .aplayer-author, 932 | .aplayer .aplayer-lrc p, 933 | span.aplayer-list-title, 934 | span.aplayer-list-author, 935 | span.aplayer-list-index { 936 | color: white !important; 937 | } 938 | 939 | /*全局背景*/ 940 | .aplayer .aplayer-lrc:after, 941 | .aplayer .aplayer-lrc:before { 942 | background: transparent !important; 943 | } 944 | 945 | /*Aplayer结束*/ 946 | 947 | /*移动端页面切换按钮*/ 948 | i.iconfont.icon-bars, 949 | i.iconfont.icon-times { 950 | font-size: 1.25rem; 951 | } 952 | 953 | /*页脚样式*/ 954 | footer { 955 | text-align: center; 956 | height: 46px; 957 | backdrop-filter: blur(10px); 958 | background: rgb(0 0 0 / 25%); 959 | } 960 | 961 | .power { 962 | line-height: 46px; 963 | color: #eeeeee; 964 | animation: fade; 965 | -webkit-animation: fade 0.75s; 966 | -moz-animation: fade 0.75s; 967 | -o-animation: fade 0.75s; 968 | -ms-animation: fade 0.75s; 969 | } 970 | 971 | /*播放音乐时底栏歌词*/ 972 | #lrc { 973 | display: none; 974 | line-height: 46px; 975 | color: #eeeeee; 976 | animation: fade; 977 | -webkit-animation: fade 0.75s; 978 | -moz-animation: fade 0.75s; 979 | -o-animation: fade 0.75s; 980 | -ms-animation: fade 0.75s; 981 | } 982 | 983 | .lrc-show { 984 | display: flex; 985 | justify-content: center; 986 | align-items: center; 987 | } 988 | 989 | /*弹窗样式*/ 990 | .iziToast { 991 | backdrop-filter: blur(10px) !important; 992 | } 993 | 994 | .iziToast > .iziToast-body .iziToast-title { 995 | font-size: 16px !important; 996 | } 997 | 998 | .iziToast-body .iziToast-message { 999 | line-height: 18px !important; 1000 | } 1001 | 1002 | .iziToast > .iziToast-body .iziToast-message { 1003 | margin: 6px 0px 4px 0px !important; 1004 | } 1005 | 1006 | .iziToast:after { 1007 | box-shadow: none !important; 1008 | } 1009 | 1010 | .iziToast > .iziToast-body .iziToast-texts { 1011 | margin: 6px 6px !important; 1012 | display: flex !important; 1013 | align-items: center; 1014 | } 1015 | 1016 | .iziToast > .iziToast-body i { 1017 | margin-left: 6px; 1018 | margin-top: 10px; 1019 | } 1020 | 1021 | .iziToast-message { 1022 | word-break: break-all !important; 1023 | } 1024 | 1025 | .iziToast > .iziToast-close { 1026 | background: url(https://cdn.jsdelivr.net/gh/imsyy/file/pic/close.png) no-repeat 50% 50% !important; 1027 | background-size: 8px !important; 1028 | } 1029 | 1030 | /*滚动条样式*/ 1031 | ::-webkit-scrollbar { 1032 | width: 6px; 1033 | height: 6px; 1034 | background-color: transparent; 1035 | } 1036 | 1037 | ::-webkit-scrollbar-thumb { 1038 | border-radius: 10px; 1039 | background-color: #eeeeee; 1040 | } 1041 | -------------------------------------------------------------------------------- /favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/favicon.ico -------------------------------------------------------------------------------- /font/MiSans-Regular.subset.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/font/MiSans-Regular.subset.ttf -------------------------------------------------------------------------------- /font/MiSans-Regular.subset.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/font/MiSans-Regular.subset.woff2 -------------------------------------------------------------------------------- /font/MiSans-Regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/font/MiSans-Regular.woff2 -------------------------------------------------------------------------------- /font/Pacifico-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/font/Pacifico-Regular.ttf -------------------------------------------------------------------------------- /font/UnidreamLED.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/font/UnidreamLED.ttf -------------------------------------------------------------------------------- /img/background1.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/background1.webp -------------------------------------------------------------------------------- /img/background10.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/background10.webp -------------------------------------------------------------------------------- /img/background2.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/background2.webp -------------------------------------------------------------------------------- /img/background3.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/background3.webp -------------------------------------------------------------------------------- /img/background4.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/background4.webp -------------------------------------------------------------------------------- /img/background5.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/background5.webp -------------------------------------------------------------------------------- /img/background6.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/background6.webp -------------------------------------------------------------------------------- /img/background7.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/background7.webp -------------------------------------------------------------------------------- /img/background8.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/background8.webp -------------------------------------------------------------------------------- /img/background9.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/background9.webp -------------------------------------------------------------------------------- /img/icon/128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/128.png -------------------------------------------------------------------------------- /img/icon/144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/144.png -------------------------------------------------------------------------------- /img/icon/180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/180.png -------------------------------------------------------------------------------- /img/icon/192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/192.png -------------------------------------------------------------------------------- /img/icon/32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/32.png -------------------------------------------------------------------------------- /img/icon/48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/48.png -------------------------------------------------------------------------------- /img/icon/512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/512.png -------------------------------------------------------------------------------- /img/icon/72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/72.png -------------------------------------------------------------------------------- /img/icon/96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/96.png -------------------------------------------------------------------------------- /img/icon/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/apple-touch-icon.png -------------------------------------------------------------------------------- /img/icon/avatar.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/avatar.jpg -------------------------------------------------------------------------------- /img/icon/candle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/candle.png -------------------------------------------------------------------------------- /img/icon/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/favicon.ico -------------------------------------------------------------------------------- /img/icon/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/logo.png -------------------------------------------------------------------------------- /img/icon/music.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/music.png -------------------------------------------------------------------------------- /img/icon/pause.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/pause.png -------------------------------------------------------------------------------- /img/icon/play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/play.png -------------------------------------------------------------------------------- /img/icon/warn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/img/icon/warn.png -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | Auroraの主页 19 | 20 | 21 | 22 | 23 | 24 | 25 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 38 | 39 | 40 | 41 | 43 | 45 | 46 | 47 | 48 | 49 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |

Auroraの主页

78 | 加载中 79 |
80 |
81 |
82 |
83 | 84 |
85 | 86 |
87 |
88 | 89 |
90 |
91 | 92 |
93 |
94 |
95 |
96 | 97 |
98 | 99 |
100 | img 101 |
102 | wuhobin 103 | .top 104 |
105 |
106 | 107 |
108 |
109 | 110 |
Hello World !
一个建立于 21 世纪的小站,存活于互联网的边缘
112 | 113 |
114 |
115 | 116 | 137 |
138 |
139 | 140 | 143 |
144 |
145 | 146 |
147 |
148 | 149 |
150 | 151 |
152 | 153 |  打开音乐播放器 154 |
155 | 156 |
157 |
每一个人都应该明确自己的方向和位置 159 |
160 |
-「 無名 」 161 |
162 |
163 |
164 | 165 |
166 |
167 |
168 |
音乐列表
169 |
回到一言
170 |
171 |
172 | 173 |
174 | 175 |
176 | 177 |
178 |
179 |
180 | 未播放音乐 181 |
182 | 188 |
189 |
190 |
191 |
192 |
193 | 194 |
195 |
196 | 2000 年 0 月 00 日 星期一
00:00:00 198 |
199 |
200 | 天气  201 | 加载失败  202 | 203 | 次数 204 | 超限 205 |
206 |
207 |
208 |
209 | 210 |
211 | 212 | 网站列表 213 |
214 | 215 | 271 |
272 |
273 |
274 | 275 | 280 | 281 |
282 | 283 |
284 | 285 |
286 |
287 | 288 | 时间胶囊 289 | 290 |
291 |
292 |
293 |
今日已经度过了  小时 294 |
295 |
296 |
297 |
298 |
299 |
300 |
本周已经度过了  天
301 |
302 |
303 |
304 |
305 |
306 |
本月已经度过了  天
307 |
308 |
309 |
310 |
311 |
312 |
今年已经度过了  个月
313 |
314 |
315 |
316 |
317 |
318 |
319 | 320 | 杂七杂八 321 | 322 |
323 | 324 | 347 | 370 |
371 | 372 | 476 |
477 |
478 | 479 | 496 |
497 | 498 | 505 | 506 | 509 | 510 | 511 | 512 | 513 | 514 | 517 | 518 | 519 | 520 | -------------------------------------------------------------------------------- /js/51LA.js: -------------------------------------------------------------------------------- 1 | !function (t) { 2 | "use strict"; 3 | !function (e) { 4 | var n = window, s = document, i = t, 5 | r = "".concat("https:" === s.location.protocol ? "https://" : "http://", "sdk.51.la/js-sdk-pro.min.js"), 6 | c = s.createElement("script"), o = s.getElementsByTagName("script")[0]; 7 | c.type = "text/javascript", c.setAttribute("charset", "UTF-8"), c.async = !0, c.src = r, c.id = "LA_COLLECT", i.d = c; 8 | var a = function () { 9 | n.LA.ids.push(i) 10 | }; 11 | n.LA ? n.LA.ids && a() : (n.LA = t, n.LA.ids = [], a()), o.parentNode.insertBefore(c, o) 12 | }() 13 | }({id: "JqNOFlYj12ogPJ9Y", ck: "JqNOFlYj12ogPJ9Y"}), function (t, e, n, s) { 14 | var i = e.createElement("script"), r = e.getElementsByTagName("script")[0]; 15 | i.type = "text/javascript", i.crossorigin = !0, i.onload = function () { 16 | (new t[s].Monitor).init({id: "JqNOmEChi1qTN6k2"}) 17 | }, r.parentNode.insertBefore(i, r), i.src = n 18 | }(window, document, "https://sdk.51.la/perf/js-sdk-perf.min.js", "LingQue"); 19 | -------------------------------------------------------------------------------- /js/js.cookie.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * JavaScript Cookie v2.2.1 3 | * https://github.com/js-cookie/js-cookie 4 | * 5 | * Copyright 2006, 2015 Klaus Hartl & Fagner Brack 6 | * Released under the MIT license 7 | */ 8 | ; 9 | (function (factory) { 10 | var registeredInModuleLoader; 11 | if (typeof define === 'function' && define.amd) { 12 | define(factory); 13 | registeredInModuleLoader = true; 14 | } 15 | if (typeof exports === 'object') { 16 | module.exports = factory(); 17 | registeredInModuleLoader = true; 18 | } 19 | if (!registeredInModuleLoader) { 20 | var OldCookies = window.Cookies; 21 | var api = window.Cookies = factory(); 22 | api.noConflict = function () { 23 | window.Cookies = OldCookies; 24 | return api; 25 | }; 26 | } 27 | }(function () { 28 | function extend() { 29 | var i = 0; 30 | var result = {}; 31 | for (; i < arguments.length; i++) { 32 | var attributes = arguments[i]; 33 | for (var key in attributes) { 34 | result[key] = attributes[key]; 35 | } 36 | } 37 | return result; 38 | } 39 | 40 | function decode(s) { 41 | return s.replace(/(%[0-9A-Z]{2})+/g, decodeURIComponent); 42 | } 43 | 44 | function init(converter) { 45 | function api() {} 46 | 47 | function set(key, value, attributes) { 48 | if (typeof document === 'undefined') { 49 | return; 50 | } 51 | 52 | attributes = extend({ 53 | path: '/' 54 | }, api.defaults, attributes); 55 | 56 | if (typeof attributes.expires === 'number') { 57 | attributes.expires = new Date(new Date() * 1 + attributes.expires * 864e+5); 58 | } 59 | 60 | // We're using "expires" because "max-age" is not supported by IE 61 | attributes.expires = attributes.expires ? attributes.expires.toUTCString() : ''; 62 | 63 | try { 64 | var result = JSON.stringify(value); 65 | if (/^[\{\[]/.test(result)) { 66 | value = result; 67 | } 68 | } catch (e) {} 69 | 70 | value = converter.write ? 71 | converter.write(value, key) : 72 | encodeURIComponent(String(value)) 73 | .replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent); 74 | 75 | key = encodeURIComponent(String(key)) 76 | .replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent) 77 | .replace(/[\(\)]/g, escape); 78 | 79 | var stringifiedAttributes = ''; 80 | for (var attributeName in attributes) { 81 | if (!attributes[attributeName]) { 82 | continue; 83 | } 84 | stringifiedAttributes += '; ' + attributeName; 85 | if (attributes[attributeName] === true) { 86 | continue; 87 | } 88 | 89 | // Considers RFC 6265 section 5.2: 90 | // ... 91 | // 3. If the remaining unparsed-attributes contains a %x3B (";") 92 | // character: 93 | // Consume the characters of the unparsed-attributes up to, 94 | // not including, the first %x3B (";") character. 95 | // ... 96 | stringifiedAttributes += '=' + attributes[attributeName].split(';')[0]; 97 | } 98 | 99 | return (document.cookie = key + '=' + value + stringifiedAttributes); 100 | } 101 | 102 | function get(key, json) { 103 | if (typeof document === 'undefined') { 104 | return; 105 | } 106 | 107 | var jar = {}; 108 | // To prevent the for loop in the first place assign an empty array 109 | // in case there are no cookies at all. 110 | var cookies = document.cookie ? document.cookie.split('; ') : []; 111 | var i = 0; 112 | 113 | for (; i < cookies.length; i++) { 114 | var parts = cookies[i].split('='); 115 | var cookie = parts.slice(1).join('='); 116 | 117 | if (!json && cookie.charAt(0) === '"') { 118 | cookie = cookie.slice(1, -1); 119 | } 120 | 121 | try { 122 | var name = decode(parts[0]); 123 | cookie = (converter.read || converter)(cookie, name) || 124 | decode(cookie); 125 | 126 | if (json) { 127 | try { 128 | cookie = JSON.parse(cookie); 129 | } catch (e) {} 130 | } 131 | 132 | jar[name] = cookie; 133 | 134 | if (key === name) { 135 | break; 136 | } 137 | } catch (e) {} 138 | } 139 | 140 | return key ? jar[key] : jar; 141 | } 142 | 143 | api.set = set; 144 | api.get = function (key) { 145 | return get(key, false /* read as raw */ ); 146 | }; 147 | api.getJSON = function (key) { 148 | return get(key, true /* read as json */ ); 149 | }; 150 | api.remove = function (key, attributes) { 151 | set(key, '', extend(attributes, { 152 | expires: -1 153 | })); 154 | }; 155 | 156 | api.defaults = {}; 157 | 158 | api.withConverter = init; 159 | 160 | return api; 161 | } 162 | 163 | return init(function () {}); 164 | })); -------------------------------------------------------------------------------- /js/lantern.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * china-lantern v1.6.0 3 | * (c) 2020-2021 fz6m 4 | * Released under the MIT License. 5 | */ 6 | ! function (t) { 7 | "function" == typeof define && define.amd ? define(t) : t() 8 | }((function () { 9 | "use strict"; 10 | ! function (t, e) { 11 | void 0 === e && (e = {}); 12 | let n = e.insertAt; 13 | if (t && "undefined" != typeof document) { 14 | let r = document.head || document.getElementsByTagName("head")[0], 15 | a = document.createElement("style"); 16 | 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)) 17 | } 18 | }; 19 | let t; 20 | (t = document.createElement("div")).className = "j-china-lantern", t.innerHTML = '
', document.body.appendChild(t) 21 | })); -------------------------------------------------------------------------------- /js/main.js: -------------------------------------------------------------------------------- 1 | /* 2 | 作者: imsyy 3 | 主页:https://www.imsyy.top/ 4 | GitHub:https://github.com/imsyy/home 5 | 版权所有,请勿删除 6 | */ 7 | 8 | //弹窗样式 9 | iziToast.settings({ 10 | timeout: 10000, 11 | progressBar: false, 12 | close: false, 13 | closeOnEscape: true, 14 | position: 'topCenter', 15 | transitionIn: 'bounceInDown', 16 | transitionOut: 'flipOutX', 17 | displayMode: 'replace', 18 | layout: '1', 19 | backgroundColor: '#00000040', 20 | titleColor: '#efefef', 21 | messageColor: '#efefef', 22 | icon: 'Fontawesome', 23 | iconColor: '#efefef', 24 | }); 25 | 26 | /* 鼠标样式 */ 27 | const body = document.querySelector("body"); 28 | const element = document.getElementById("g-pointer-1"); 29 | const element2 = document.getElementById("g-pointer-2"); 30 | const halfAlementWidth = element.offsetWidth / 2; 31 | const halfAlementWidth2 = element2.offsetWidth / 2; 32 | 33 | function setPosition(x, y) { 34 | element2.style.transform = `translate(${x - halfAlementWidth2 + 1}px, ${y - halfAlementWidth2 + 1}px)`; 35 | } 36 | 37 | body.addEventListener('mousemove', (e) => { 38 | window.requestAnimationFrame(function () { 39 | setPosition(e.clientX, e.clientY); 40 | }); 41 | }); 42 | 43 | 44 | 45 | //加载完成后执行 46 | window.addEventListener('load', function () { 47 | 48 | //载入动画 49 | $('#loading-box').attr('class', 'loaded'); 50 | $('#bg').css("cssText", "transform: scale(1);filter: blur(0px);transition: ease 1.5s;"); 51 | $('.cover').css("cssText", "opacity: 1;transition: ease 1.5s;"); 52 | $('#section').css("cssText", "transform: scale(1) !important;opacity: 1 !important;filter: blur(0px) !important"); 53 | 54 | //用户欢迎 55 | setTimeout(function () { 56 | iziToast.show({ 57 | timeout: 2500, 58 | icon: false, 59 | title: hello, 60 | message: '欢迎来到我的主页' 61 | }); 62 | }, 800); 63 | 64 | //延迟加载音乐播放器 65 | let element = document.createElement("script"); 66 | element.src = "./js/music.js"; 67 | document.body.appendChild(element); 68 | 69 | //中文字体缓加载-此处写入字体源文件 (暂时弃用) 70 | //先行加载简体中文子集,后续补全字集 71 | //由于压缩过后的中文字体仍旧过大,可转移至对象存储或 CDN 加载 72 | // const font = new FontFace( 73 | // "MiSans", 74 | // "url(" + "./font/MiSans-Regular.woff2" + ")" 75 | // ); 76 | // document.fonts.add(font); 77 | 78 | //移动端去除鼠标样式 79 | if (Boolean(window.navigator.userAgent.match(/AppWebKit.*Mobile.*/))) { 80 | $('#g-pointer-2').css("display", "none"); 81 | } 82 | 83 | }, false) 84 | 85 | setTimeout(function () { 86 | $('#loading-text').html("字体及文件加载可能需要一定时间") 87 | }, 3000); 88 | 89 | // 新春灯笼 ( 需要时可取消注释 ) 90 | // new_element=document.createElement("link"); 91 | // new_element.setAttribute("rel","stylesheet"); 92 | // new_element.setAttribute("type","text/css"); 93 | // new_element.setAttribute("href","./css/lantern.css"); 94 | // document.body.appendChild(new_element); 95 | 96 | // new_element=document.createElement("script"); 97 | // new_element.setAttribute("type","text/javascript"); 98 | // new_element.setAttribute("src","./js/lantern.js"); 99 | // document.body.appendChild(new_element); 100 | 101 | //获取一言 102 | fetch('https://v1.hitokoto.cn?max_length=24') 103 | .then(response => response.json()) 104 | .then(data => { 105 | $('#hitokoto_text').html(data.hitokoto) 106 | $('#from_text').html(data.from) 107 | }) 108 | .catch(console.error) 109 | 110 | let times = 0; 111 | $('#hitokoto').click(function () { 112 | if (times == 0) { 113 | times = 1; 114 | let index = setInterval(function () { 115 | times--; 116 | if (times == 0) { 117 | clearInterval(index); 118 | } 119 | }, 1000); 120 | fetch('https://v1.hitokoto.cn?max_length=24') 121 | .then(response => response.json()) 122 | .then(data => { 123 | $('#hitokoto_text').html(data.hitokoto) 124 | $('#from_text').html(data.from) 125 | }) 126 | .catch(console.error) 127 | } else { 128 | iziToast.show({ 129 | timeout: 1000, 130 | icon: "fa-solid fa-circle-exclamation", 131 | message: '你点太快了吧' 132 | }); 133 | } 134 | }); 135 | 136 | //获取天气 137 | //请前往 https://www.mxnzp.com/doc/list 申请 app_id 和 app_secret 138 | //请前往 https://dev.qweather.com/ 申请 key 139 | const add_id = "vcpmlmqiqnjpxwq1"; // app_id 140 | const app_secret = "PeYnsesgkmK7qREhIFppIcsoN0ZShv3c"; // app_secret 141 | const key = "691d007d585841c09e9b41e79853ecc2" // key 142 | function getWeather() { 143 | fetch("https://www.mxnzp.com/api/ip/self?app_id=" + add_id + "&app_secret=" + app_secret) 144 | .then(response => response.json()) 145 | .then(data => { 146 | let str = data.data.city 147 | let city = str.replace(/市/g, '') 148 | console.log(data,"sssss") 149 | $('#city_text').html(city); 150 | fetch("https://geoapi.qweather.com/v2/city/lookup?location=" + city + "&number=1&key=" + key) 151 | .then(response => response.json()) 152 | .then(location => { 153 | let id = location.location[0].id 154 | fetch("https://devapi.qweather.com/v7/weather/now?location=" + id + "&key=" + key) 155 | .then(response => response.json()) 156 | .then(weather => { 157 | $('#wea_text').html(weather.now.text) 158 | $('#tem_text').html(weather.now.temp + "°C ") 159 | $('#win_text').html(weather.now.windDir) 160 | $('#win_speed').html(weather.now.windScale + "级") 161 | }) 162 | }) 163 | }) 164 | .catch(console.error); 165 | } 166 | 167 | getWeather(); 168 | 169 | let wea = 0; 170 | $('#upWeather').click(function () { 171 | if (wea == 0) { 172 | wea = 1; 173 | let index = setInterval(function () { 174 | wea--; 175 | if (wea == 0) { 176 | clearInterval(index); 177 | } 178 | }, 60000); 179 | getWeather(); 180 | iziToast.show({ 181 | timeout: 2000, 182 | icon: "fa-solid fa-cloud-sun", 183 | message: '实时天气已更新' 184 | }); 185 | } else { 186 | iziToast.show({ 187 | timeout: 1000, 188 | icon: "fa-solid fa-circle-exclamation", 189 | message: '请稍后再更新哦' 190 | }); 191 | } 192 | }); 193 | 194 | //获取时间 195 | let t = null; 196 | t = setTimeout(time, 1000); 197 | 198 | function time() { 199 | clearTimeout(t); 200 | dt = new Date(); 201 | let y = dt.getYear() + 1900; 202 | let mm = dt.getMonth() + 1; 203 | let d = dt.getDate(); 204 | let weekday = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]; 205 | let day = dt.getDay(); 206 | let h = dt.getHours(); 207 | let m = dt.getMinutes(); 208 | let s = dt.getSeconds(); 209 | if (h < 10) { 210 | h = "0" + h; 211 | } 212 | if (m < 10) { 213 | m = "0" + m; 214 | } 215 | if (s < 10) { 216 | s = "0" + s; 217 | } 218 | $("#time").html(y + " 年 " + mm + " 月 " + d + " 日 " + "" + weekday[day] + "
" + "" + h + ":" + m + ":" + s + ""); 219 | t = setTimeout(time, 1000); 220 | } 221 | 222 | //链接提示文字 223 | $("#social").mouseover(function () { 224 | $("#social").css({ 225 | "background": "rgb(0 0 0 / 25%)", 226 | 'border-radius': '6px', 227 | "backdrop-filter": "blur(5px)" 228 | }); 229 | $("#link-text").css({ 230 | "display": "block", 231 | }); 232 | }).mouseout(function () { 233 | $("#social").css({ 234 | "background": "none", 235 | "border-radius": "6px", 236 | "backdrop-filter": "none" 237 | }); 238 | $("#link-text").css({ 239 | "display": "none" 240 | }); 241 | }); 242 | 243 | $("#github").mouseover(function () { 244 | $("#link-text").html("去 Github 看看"); 245 | }).mouseout(function () { 246 | $("#link-text").html("通过这里联系我"); 247 | }); 248 | $("#qq").mouseover(function () { 249 | $("#link-text").html("有什么事吗"); 250 | }).mouseout(function () { 251 | $("#link-text").html("通过这里联系我"); 252 | }); 253 | $("#email").mouseover(function () { 254 | $("#link-text").html("来封 Email"); 255 | }).mouseout(function () { 256 | $("#link-text").html("通过这里联系我"); 257 | }); 258 | $("#bilibili").mouseover(function () { 259 | $("#link-text").html("来 B 站看看 ~"); 260 | }).mouseout(function () { 261 | $("#link-text").html("通过这里联系我"); 262 | }); 263 | $("#telegram").mouseover(function () { 264 | $("#link-text").html("你懂的 ~"); 265 | }).mouseout(function () { 266 | $("#link-text").html("通过这里联系我"); 267 | }); 268 | 269 | //自动变灰 270 | let myDate = new Date; 271 | let mon = myDate.getMonth() + 1; 272 | let date = myDate.getDate(); 273 | let days = ['4.4', '5.12', '7.7', '9.9', '9.18', '12.13']; 274 | for (let day of days) { 275 | let d = day.split('.'); 276 | if (mon == d[0] && date == d[1]) { 277 | document.write( 278 | '' 279 | ); 280 | $("#change").html("Silence in silence"); 281 | $("#change1").html("今天是中国国家纪念日,全站已切换为黑白模式"); 282 | window.addEventListener('load', function () { 283 | setTimeout(function () { 284 | iziToast.show({ 285 | timeout: 14000, 286 | icon: "fa-solid fa-clock", 287 | message: '今天是中国国家纪念日' 288 | }); 289 | }, 3800); 290 | }, false); 291 | } 292 | } 293 | 294 | //更多页面切换 295 | let shoemore = false; 296 | $('#switchmore').on('click', function () { 297 | shoemore = !shoemore; 298 | if (shoemore && $(document).width() >= 990) { 299 | $('#container').attr('class', 'container mores'); 300 | $("#change").html("Oops !"); 301 | $("#change1").html("哎呀,这都被你发现了( 再点击一次可关闭 )"); 302 | } else { 303 | $('#container').attr('class', 'container'); 304 | $("#change").html("Hello World !"); 305 | $("#change1").html("一个建立于 21 世纪的小站,存活于互联网的边缘"); 306 | } 307 | }); 308 | 309 | //更多页面关闭按钮 310 | $('#close').on('click', function () { 311 | $('#switchmore').click(); 312 | }); 313 | 314 | //移动端菜单栏切换 315 | let switchmenu = false; 316 | $('#switchmenu').on('click', function () { 317 | switchmenu = !switchmenu; 318 | if (switchmenu) { 319 | $('#row').attr('class', 'row menus'); 320 | $("#menu").html(""); 321 | } else { 322 | $('#row').attr('class', 'row'); 323 | $("#menu").html(""); 324 | } 325 | }); 326 | 327 | //更多弹窗页面 328 | $('#openmore').on('click', function () { 329 | $('#box').css("display", "block"); 330 | $('#row').css("display", "none"); 331 | $('#more').css("cssText", "display:none !important"); 332 | }); 333 | $('#closemore').on('click', function () { 334 | $('#box').css("display", "none"); 335 | $('#row').css("display", "flex"); 336 | $('#more').css("display", "flex"); 337 | }); 338 | 339 | //监听网页宽度 340 | window.addEventListener('load', function () { 341 | window.addEventListener('resize', function () { 342 | //关闭移动端样式 343 | if (window.innerWidth >= 600) { 344 | $('#row').attr('class', 'row'); 345 | $("#menu").html(""); 346 | //移除移动端切换功能区 347 | $('#rightone').attr('class', 'row rightone'); 348 | } 349 | 350 | if (window.innerWidth <= 990) { 351 | //移动端隐藏更多页面 352 | $('#container').attr('class', 'container'); 353 | $("#change").html("Hello World !"); 354 | $("#change1").html("一个建立于 21 世纪的小站,存活于互联网的边缘"); 355 | 356 | //移动端隐藏弹窗页面 357 | $('#box').css("display", "none"); 358 | $('#row').css("display", "flex"); 359 | $('#more').css("display", "flex"); 360 | } 361 | }) 362 | }) 363 | 364 | //移动端切换功能区 365 | let changemore = false; 366 | $('#changemore').on('click', function () { 367 | changemore = !changemore; 368 | if (changemore) { 369 | $('#rightone').attr('class', 'row menus mobile'); 370 | } else { 371 | $('#rightone').attr('class', 'row menus'); 372 | } 373 | }); 374 | 375 | //更多页面显示关闭按钮 376 | $("#more").hover(function () { 377 | $('#close').css("display", "block"); 378 | }, function () { 379 | $('#close').css("display", "none"); 380 | }) 381 | 382 | //屏蔽右键 383 | document.oncontextmenu = function () { 384 | iziToast.show({ 385 | timeout: 2000, 386 | icon: "fa-solid fa-circle-exclamation", 387 | message: '为了浏览体验,本站禁用右键' 388 | }); 389 | return false; 390 | } 391 | 392 | //控制台输出 393 | //console.clear(); 394 | let styleTitle1 = ` 395 | font-size: 20px; 396 | font-weight: 600; 397 | color: rgb(244,167,89); 398 | ` 399 | let styleTitle2 = ` 400 | font-size:12px; 401 | color: #425AEF; 402 | ` 403 | let styleContent = ` 404 | color: rgb(30,152,255); 405 | ` 406 | let title1 = 'Auroraの主页' 407 | let title2 = ` 408 | 409 | ██████╗ ██╗ ██╗██╗ ██╗██╗███╗ ██╗██████╗ 410 | ██╔══██╗╚██╗ ██╔╝██║ ██║██║████╗ ██║██╔══██╗ 411 | ██████╔╝ ╚████╔╝ ██║ █╗ ██║██║██╔██╗ ██║██║ ██║ 412 | ██╔══██╗ ╚██╔╝ ██║███╗██║██║██║╚██╗██║██║ ██║ 413 | ██████╔╝ ██║ ╚███╔███╔╝██║██║ ╚████║██████╔╝ 414 | ╚═════╝ ╚═╝ ╚══╝╚══╝ ╚═╝╚═╝ ╚═══╝╚═════╝ 415 | ` 416 | let content = ` 417 | 博客: https://bolo.wuhobin.top 418 | Github: https://github.com/wuhobin 419 | ` 420 | console.log(`%c${title1} %c${title2} 421 | %c${content}`, styleTitle1, styleTitle2, styleContent) 422 | -------------------------------------------------------------------------------- /js/music.js: -------------------------------------------------------------------------------- 1 | /* 2 | 音乐信息 3 | 4 | 感谢 @武恩赐 提供的 MetingAPI 5 | https://api.wuenci.com/meting/api/ 6 | 7 | 作者: imsyy 8 | 主页:https://www.imsyy.top/ 9 | GitHub:https://github.com/imsyy/home 10 | 版权所有,请勿删除 11 | */ 12 | let server = "tencent"; //netease: 网易云音乐; tencent: QQ音乐; kugou: 酷狗音乐; xiami: 虾米; kuwo: 酷我 13 | let type = "playlist"; //song: 单曲; playlist: 歌单; album: 唱片 14 | let id = "2751969066"; //封面 ID / 单曲 ID / 歌单 ID 15 | 16 | $.ajax({ 17 | url: "https://api.wuenci.com/meting/api/?server=" + server + "&type=" + type + "&id=" + id, 18 | type: "GET", 19 | dataType: "JSON", 20 | success: function (data) { 21 | const ap = new APlayer({ 22 | container: document.getElementById('aplayer'), 23 | order: 'random', 24 | preload: 'auto', 25 | listMaxHeight: '336px', 26 | volume: '0.5', 27 | mutex: true, 28 | lrcType: 3, 29 | audio: data, 30 | }); 31 | 32 | /* 底栏歌词 */ 33 | setInterval(function () { 34 | $("#lrc").html(" " + $(".aplayer-lrc-current").text() + " "); 35 | }, 500); 36 | 37 | /* 音乐通知及控制 */ 38 | ap.on('play', function () { 39 | music = $(".aplayer-title").text() + $(".aplayer-author").text(); 40 | iziToast.info({ 41 | timeout: 4000, 42 | icon: "fa-solid fa-circle-play", 43 | displayMode: 'replace', 44 | message: music 45 | }); 46 | $("#play").html(""); 47 | $("#music-name").html($(".aplayer-title").text() + $(".aplayer-author").text()); 48 | if ($(document).width() >= 990) { 49 | $('.power').css("cssText", "display:none"); 50 | $('#lrc').css("cssText", "display:block !important"); 51 | }; 52 | // Notification.requestPermission().then(res => { 53 | // console.log(res) 54 | // }); 55 | // new Notification('音乐通知', { 56 | // body: '正在播放:' + music, 57 | // tag: 1 58 | // }); 59 | }); 60 | 61 | ap.on('pause', function () { 62 | $("#play").html(""); 63 | if ($(document).width() >= 990) { 64 | $('#lrc').css("cssText", "display:none !important"); 65 | $('.power').css("cssText", "display:block"); 66 | } 67 | }); 68 | 69 | $("#music").hover(function () { 70 | $('.music-text').css("display", "none"); 71 | $('.music-volume').css("display", "flex"); 72 | }, function () { 73 | $('.music-text').css("display", "block"); 74 | $('.music-volume').css("display", "none"); 75 | }) 76 | 77 | /* 一言与音乐切换 */ 78 | $('#open-music').on('click', function () { 79 | $('#hitokoto').css("display", "none"); 80 | $('#music').css("display", "flex"); 81 | }); 82 | 83 | $("#hitokoto").hover(function () { 84 | $('#open-music').css("display", "flex"); 85 | }, function () { 86 | $('#open-music').css("display", "none"); 87 | }) 88 | 89 | $('#music-close').on('click', function () { 90 | $('#music').css("display", "none"); 91 | $('#hitokoto').css("display", "flex"); 92 | }); 93 | 94 | /* 上下曲 */ 95 | $('#play').on('click', function () { 96 | ap.toggle(); 97 | $("#music-name").html($(".aplayer-title").text() + $(".aplayer-author").text()); 98 | }); 99 | 100 | $('#last').on('click', function () { 101 | ap.skipBack(); 102 | ap.play(); 103 | $("#music-name").html($(".aplayer-title").text() + $(".aplayer-author").text()); 104 | }); 105 | 106 | $('#next').on('click', function () { 107 | ap.skipForward(); 108 | ap.play(); 109 | $("#music-name").html($(".aplayer-title").text() + $(".aplayer-author").text()); 110 | }); 111 | 112 | window.onkeydown = function (e) { 113 | if (e.keyCode == 32) { 114 | ap.toggle(); 115 | } 116 | } 117 | 118 | /* 打开音乐列表 */ 119 | $('#music-open').on('click', function () { 120 | if ($(document).width() >= 990) { 121 | $('#box').css("display", "block"); 122 | $('#row').css("display", "none"); 123 | $('#more').css("cssText", "display:none !important"); 124 | } 125 | }); 126 | 127 | //音量调节 128 | $("#volume").on('input propertychange touchend', function () { 129 | let x = $("#volume").val(); 130 | ap.volume(x, true); 131 | if (x == 0) { 132 | $("#volume-ico").html(""); 133 | } else if (x > 0 && x <= 0.3) { 134 | $("#volume-ico").html(""); 135 | } else if (x > 0.3 && x <= 0.6) { 136 | $("#volume-ico").html(""); 137 | } else { 138 | $("#volume-ico").html(""); 139 | } 140 | }); 141 | }, 142 | error: function () { 143 | setTimeout(function () { 144 | iziToast.info({ 145 | timeout: 8000, 146 | icon: "fa-solid fa-circle-exclamation", 147 | displayMode: 'replace', 148 | message: '音乐播放器加载失败' 149 | }); 150 | }, 3800); 151 | } 152 | }) 153 | -------------------------------------------------------------------------------- /js/set.js: -------------------------------------------------------------------------------- 1 | /* 2 | 作者: imsyy 3 | 主页:https://www.imsyy.top/ 4 | GitHub:https://github.com/imsyy/home 5 | 版权所有,请勿删除 6 | */ 7 | 8 | /* 自定义配置 */ 9 | /* 尚未完善 */ 10 | $(function () { 11 | let url = "../setting.json" 12 | $.getJSON( 13 | url, 14 | function (data) { 15 | /* 页头数据 */ 16 | $('title').text(data.title); 17 | $('#loading-title').html(data.title); 18 | $("meta[name='description']").attr('content', data.description); 19 | $("meta[name='keywords']").attr('content', data.keywords); 20 | $("meta[name='author']").attr('content', data.author); 21 | /* 基础信息 */ 22 | $("#logo-img").attr("src", data.logo_img); 23 | $('#logo-text-1').html(data.logo_text_1); 24 | $('#logo-text-2').html("." + data.logo_text_2); 25 | $('#logo-title-other').html(data.logo_text_1); 26 | $('#logo-title-other-small').html("." + data.logo_text_2); 27 | $('#logo-text-small').html(data.logo_text_1 + "." + data.logo_text_2); 28 | /* 社交链接 */ 29 | $('#github').attr('href', "https://github.com/" + data.github); 30 | $('#qq').attr('href', "https://wpa.qq.com/msgrd?v=3&uin=" + data.qq + "&site=qq&menu=yes"); 31 | $('#email').attr('href', "mailto:" + data.email); 32 | $('#bilibili').attr('href', "https://space.bilibili.com/" + data.bilibili); 33 | $('#telegram').attr('href', "https://t.me/" + data.telegram); 34 | /* 快捷链接 */ 35 | $('#link-url-1').attr('href', data.link_1[0]); 36 | $('#link-icon-1').attr('class', data.link_1[1]); 37 | $('#link-name-1').html(data.link_1[2]); 38 | $('#link-url-2').attr('href', data.link_2[0]); 39 | $('#link-icon-2').attr('class', data.link_2[1]); 40 | $('#link-name-2').html(data.link_2[2]); 41 | $('#link-url-3').attr('href', data.link_3[0]); 42 | $('#link-icon-3').attr('class', data.link_3[1]); 43 | $('#link-name-3').html(data.link_3[2]); 44 | $('#link-url-4').attr('href', data.link_4[0]); 45 | $('#link-icon-4').attr('class', data.link_4[1]); 46 | $('#link-name-4').html(data.link_4[2]); 47 | $('#link-url-5').attr('href', data.link_5[0]); 48 | $('#link-icon-5').attr('class', data.link_5[1]); 49 | $('#link-name-5').html(data.link_5[2]); 50 | $('#link-url-6').attr('href', data.link_6[0]); 51 | $('#link-icon-6').attr('class', data.link_6[1]); 52 | $('#link-name-6').html(data.link_6[2]); 53 | //页脚版权 54 | $('#power-text').html(data.Copyright_text); 55 | $('#beian').html("& " + data.beian); 56 | } 57 | ) 58 | }); 59 | 60 | // 背景图片 Cookies 61 | function setBgImg(bg_img) { 62 | if (bg_img) { 63 | Cookies.set('bg_img', bg_img, { 64 | expires: 36500 65 | }); 66 | return true; 67 | } 68 | return false; 69 | }; 70 | 71 | // 获取背景图片 Cookies 72 | function getBgImg() { 73 | let bg_img_local = Cookies.get('bg_img'); 74 | if (bg_img_local && bg_img_local !== "{}") { 75 | return JSON.parse(bg_img_local); 76 | } else { 77 | setBgImg(bg_img_preinstall); 78 | return bg_img_preinstall; 79 | } 80 | } 81 | 82 | let bg_img_preinstall = { 83 | "type": "1", // 1:默认背景 2:每日一图 3:随机风景 4:随机动漫 84 | "2": "https://api.dujin.org/bing/1920.php", // 每日一图 85 | "3": "https://api.ixiaowai.cn/gqapi/gqapi.php", // 随机风景 86 | "4": "https://api.ixiaowai.cn/api/api.php" // 随机动漫 87 | }; 88 | 89 | // 更改背景图片 90 | function setBgImgInit() { 91 | let bg_img = getBgImg(); 92 | $("input[name='wallpaper-type'][value=" + bg_img["type"] + "]").click(); 93 | 94 | switch (bg_img["type"]) { 95 | case "1": 96 | $('#bg').attr('src', `./img/background${1 + ~~(Math.random() * 10)}.webp`) //随机默认壁纸 97 | break; 98 | case "2": 99 | $('#bg').attr('src', bg_img_preinstall[2]); //必应每日 100 | break; 101 | case "3": 102 | $('#bg').attr('src', bg_img_preinstall[3]); //随机风景 103 | break; 104 | case "4": 105 | $('#bg').attr('src', bg_img_preinstall[4]); //随机动漫 106 | break; 107 | } 108 | }; 109 | 110 | $(document).ready(function () { 111 | // 壁纸数据加载 112 | setBgImgInit(); 113 | // 设置背景图片 114 | $("#wallpaper").on("click", ".set-wallpaper", function () { 115 | let type = $(this).val(); 116 | let bg_img = getBgImg(); 117 | bg_img["type"] = type; 118 | iziToast.show({ 119 | icon: "fa-solid fa-image", 120 | timeout: 2500, 121 | message: '壁纸设置成功,刷新后生效', 122 | }); 123 | setBgImg(bg_img); 124 | }); 125 | }); -------------------------------------------------------------------------------- /js/time.js: -------------------------------------------------------------------------------- 1 | function init_life_time() { 2 | function getAsideLifeTime() { 3 | /* 当前时间戳 */ 4 | let nowDate = +new Date(); 5 | /* 今天开始时间戳 */ 6 | let todayStartDate = new Date(new Date().toLocaleDateString()).getTime(); 7 | /* 今天已经过去的时间 */ 8 | let todayPassHours = (nowDate - todayStartDate) / 1000 / 60 / 60; 9 | /* 今天已经过去的时间比 */ 10 | let todayPassHoursPercent = (todayPassHours / 24) * 100; 11 | $('#dayProgress .date-text span').html(parseInt(todayPassHours)); 12 | $('#dayProgress .progress .progress-bar').css('width', parseInt(todayPassHoursPercent) + '%'); 13 | $('#dayProgress .progress .progress-bar').html(parseInt(todayPassHoursPercent) + '%'); 14 | /* 当前周几 */ 15 | let weeks = { 16 | 0: 7, 17 | 1: 1, 18 | 2: 2, 19 | 3: 3, 20 | 4: 4, 21 | 5: 5, 22 | 6: 6 23 | }; 24 | let weekDay = weeks[new Date().getDay()]; 25 | let weekDayPassPercent = (weekDay / 7) * 100; 26 | $('#weekProgress .date-text span').html(weekDay); 27 | $('#weekProgress .progress .progress-bar').css('width', parseInt(weekDayPassPercent) + '%'); 28 | $('#weekProgress .progress .progress-bar').html(parseInt(weekDayPassPercent) + '%'); 29 | /* 月 */ 30 | let year = new Date().getFullYear(); 31 | let date = new Date().getDate(); 32 | let month = new Date().getMonth() + 1; 33 | let monthAll = new Date(year, month, 0).getDate(); 34 | let monthPassPercent = (date / monthAll) * 100; 35 | $('#monthProgress .date-text span').html(date); 36 | $('#monthProgress .progress .progress-bar').css('width', parseInt(monthPassPercent) + '%'); 37 | $('#monthProgress .progress .progress-bar').html(parseInt(monthPassPercent) + '%'); 38 | /* 年 */ 39 | let yearPass = (month / 12) * 100; 40 | $('#yearProgress .date-text span').html(month); 41 | $('#yearProgress .progress .progress-bar').css('width', parseInt(yearPass) + '%'); 42 | $('#yearProgress .progress .progress-bar').html(parseInt(yearPass) + '%'); 43 | } 44 | getAsideLifeTime(); 45 | setInterval(() => { 46 | getAsideLifeTime(); 47 | }, 1000); 48 | } 49 | init_life_time() 50 | 51 | now = new Date(), hour = now.getHours() 52 | if (hour < 6) { 53 | var hello = "凌晨好"; 54 | } else if (hour < 9) { 55 | var hello = "早上好"; 56 | } else if (hour < 12) { 57 | var hello = "上午好"; 58 | } else if (hour < 14) { 59 | var hello = "中午好"; 60 | } else if (hour < 17) { 61 | var hello = "下午好"; 62 | } else if (hour < 19) { 63 | var hello = "傍晚好"; 64 | } else if (hour < 22) { 65 | var hello = "晚上好"; 66 | } else { 67 | var hello = "夜深了"; 68 | } -------------------------------------------------------------------------------- /manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Auroraの主页", 3 | "short_name": "Auroraの主页", 4 | "description": "一个默默无闻的主页", 5 | "display": "standalone", 6 | "start_url": "/", 7 | "theme_color": "#424242", 8 | "background_color": "#424242", 9 | "icons": [ 10 | { 11 | "src": "img/icon/48.png", 12 | "sizes": "48x48", 13 | "type": "image/png" 14 | }, 15 | { 16 | "src": "img/icon/72.png", 17 | "sizes": "72x72", 18 | "type": "image/png" 19 | }, 20 | { 21 | "src": "img/icon/96.png", 22 | "sizes": "96x96", 23 | "type": "image/png" 24 | }, 25 | { 26 | "src": "img/icon/128.png", 27 | "sizes": "128x128", 28 | "type": "image/png" 29 | }, 30 | { 31 | "src": "img/icon/144.png", 32 | "sizes": "144x144", 33 | "type": "image/png" 34 | }, 35 | { 36 | "src": "img/icon/192.png", 37 | "sizes": "192x192", 38 | "type": "image/png" 39 | }, 40 | { 41 | "src": "img/icon/512.png", 42 | "sizes": "512x512", 43 | "type": "image/png" 44 | } 45 | ] 46 | } 47 | -------------------------------------------------------------------------------- /setting.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Auroraの主页", 3 | "description": "一个默默无闻的主页", 4 | "keywords": "Aurora,个人主页", 5 | "author": "Aurora", 6 | "logo_img": "./img/icon/avatar.jpg", 7 | "logo_text_1": "wuhobin", 8 | "logo_text_2": "top", 9 | "github": "wuhobin", 10 | "qq": "1289066006", 11 | "email": "1289066006@qq.com", 12 | "bilibili": "495003013", 13 | "facebook": "bottom_user", 14 | "link_1": [ 15 | "http://blog.wuhobin.top/", 16 | "fa-solid fa-blog", 17 | "博客" 18 | ], 19 | "link_2": [ 20 | "https://tongji.baidu.com/", 21 | "fa-solid fa-cloud", 22 | "统计" 23 | ], 24 | "link_3": [ 25 | "http://www.wuhobin.top/", 26 | "fa-solid fa-compass", 27 | "起始页" 28 | ], 29 | "link_4": [ 30 | "https://codenote.wuhobin.top", 31 | "fa-solid fa-book-bookmark", 32 | "编程宝典" 33 | ], 34 | "link_5": [ 35 | "http://www.wuhobin.top/", 36 | "fa-solid fa-flask", 37 | "开发中..." 38 | ], 39 | "link_6": [ 40 | "http://www.wuhobin.top/", 41 | "fa-solid fa-flask", 42 | "敬请期待..." 43 | ], 44 | "Copyright_text": "Aurora", 45 | "beian": "鄂ICP备20006685号" 46 | } 47 | -------------------------------------------------------------------------------- /sw.js: -------------------------------------------------------------------------------- 1 | self.addEventListener("error",function(e){self.clients.matchAll().then(function(t){t&&t.length&&t[0].postMessage({type:"ERROR",msg:e.message||null,stack:e.error?e.error.stack:null})})}),self.addEventListener("unhandledrejection",function(e){self.clients.matchAll().then(function(t){t&&t.length&&t[0].postMessage({type:"REJECTION",msg:e.reason?e.reason.message:null,stack:e.reason?e.reason.stack:null})})}),importScripts("https://g.alicdn.com/kg/workbox/3.3.0/workbox-sw.js"),workbox.setConfig({debug:!1,modulePathPrefix:"https://g.alicdn.com/kg/workbox/3.3.0/"}),workbox.skipWaiting(),workbox.clientsClaim();var cacheList=["/","/index.html"];workbox.routing.registerRoute(new RegExp(/\.(?:html|css)$/),workbox.strategies.networkFirst({cacheName:"ql:html",plugins:[new workbox.expiration.Plugin({maxEntries:10})]})),workbox.routing.registerRoute(new RegExp(/\.(?:js|css)$/),workbox.strategies.staleWhileRevalidate({cacheName:"ql:static",plugins:[new workbox.expiration.Plugin({maxEntries:20})]})),workbox.routing.registerRoute(new RegExp(/\.(?:png|gif|jpg|jpeg|webp|svg|cur|ttf|woff2|woff)$/),workbox.strategies.cacheFirst({cacheName:"ql:img",plugins:[new workbox.cacheableResponse.Plugin({statuses:[0,200]}),new workbox.expiration.Plugin({maxEntries:20,maxAgeSeconds:43200})]})); -------------------------------------------------------------------------------- /upgrade-your-browser/css/support.style.min.css: -------------------------------------------------------------------------------- 1 | a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,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:after,blockquote:before,q:after,q:before{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}.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:700}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:700}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}.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;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}#referrer a,.targetline{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:700;margin-top:0}.browser-list{height:auto}.browser{margin:0 20px 20px 0}code{word-break:break-word}} -------------------------------------------------------------------------------- /upgrade-your-browser/end-of-ie-support/css/support.style.min.css: -------------------------------------------------------------------------------- 1 | a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,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:after,blockquote:before,q:after,q:before{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}.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:700}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:700}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}.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;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}#referrer a,.targetline{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:700;margin-top:0}.browser-list{height:auto}.browser{margin:0 20px 20px 0}code{word-break:break-word}} -------------------------------------------------------------------------------- /upgrade-your-browser/end-of-ie-support/index.html: -------------------------------------------------------------------------------- 1 | 对旧版 Internet Explorer 的支持服务已终止
本页是 IE 旧版支持服务终止页面的文字副本,因微软官方网页无法在旧版IE中正常访问,故提供此备份以供旧版IE用户浏览。查看原网页

对旧版 Internet Explorer 的支持服务已终止

从 2016 年 1 月 12 日开始,仅面向受支持操作系统的最新版 Internet Explorer 将收到技术支持和安全更新。Internet Explorer 11 是最新版的 Internet Explorer,将继续在 Windows 7、Windows 8.1 和 Windows 10 上收到安全更新、兼容性修复程序和技术支持。

这意味着什么?

这意味着您应该采取行动。2016 年 1 月 12 日之后,Microsoft 将不再为 Internet Explorer 早期版本提供安全更新或技术支持。安全更新用于修补可能被恶意软件利用的漏洞,从而为提高用户及其数据的安全性提供帮助。定期安全更新帮助保护计算机不受恶意攻击,因此升级和保持最新很重要。

我如何升级 Internet Explorer?

中小型企业:对于考虑浏览器升级的中小型企业,选择有很多。没有 Web 应用程序的中小型组织(员工在 500 人以下)可使用自动更新进行自动更新。对于依赖现有 Web 应用程序的中小型企业,可以寻找 Microsoft 认证合作伙伴以了解符合其业务需要的最佳方案。

企业客户:Microsoft 为大型组织(员工在 500 人以上)提供丰富的技术资源、工具和专家指导,以帮助这些组织轻松部署和管理 Windows、Office 以及 Internet Explorer 产品和技术。通过联系您的 Microsoft 销售代表、Microsoft Services 部门或 Microsoft 认证合作伙伴,详细了解迁移和部署计划。了解如何通过访问 TechNet 自行试用和部署最新版本的 Edge。

使用 Internet Explorer 早期版本的潜在风险

2016 年 1 月 12 日后运行 Internet Explorer 早期版本可能使您面临潜在风险,例如:

安全性:没有关键的浏览器安全更新,您的 PC 可能易受有害病毒、间谍软件和其他恶意软件的攻击,它们可以窃取或损害您的业务数据和信息。

合规性:需要遵守法规规定(如 HIPAA)的企业应执行尽职调查,以评估它们使用不受支持的软件是否仍能满足合规性要求。

缺乏独立软件 (ISV) 支持:许多独立软件供应商 (ISV) 都不再支持 Internet Explorer 早期版本。例如,Office 365 采用现代 Web 标准,而且与最新浏览器一起使用时运行最出色。

Copyright © 2020無名 . All Rights Reserved

-------------------------------------------------------------------------------- /upgrade-your-browser/end-of-ie-support/js/er3eport.min.js: -------------------------------------------------------------------------------- 1 | var _hmt=_hmt||[],er3eport={};er3eport.start=(new Date).getTime(),er3eport.codetime=function(){return(new Date).getTime()-er3eport.start},er3eport.dodnt=function(){window.dnt=1,"function"==typeof window.dodnt&&window.dodnt()},er3eport.jqdefined=function(){_hmt.push(["_setCustomVar",2,"JSERROR","jQueryDefined # "+er3eport.codetime(),3]),er3eport.dodnt()},er3eport.listener=function(e){var t,r=!1,n="JSERROR";"string"==typeof e?r=e:(e.error?r=e.error.stack:e.message&&(r=e.message),e.srcElement&&e.srcElement.src?t=e.srcElement.src:e.target&&e.target.src&&(t=e.target.src),r||(t?(r="FileError: "+t,n="FILEERROR"):e.type&&(r=e.type)));return r="string"!=typeof r?"empty_error_string":r.replace(/\n/g,"").replace(/\s+/g," "),_hmt.push(["_trackEvent",n,window.location.pathname,r+" #UA# "+navigator.userAgent+" # "+er3eport.codetime()]),!0},"function"==typeof jQuery&&er3eport.jqdefined(),Object.defineProperty&&Object.defineProperty(window,"jQuery",{set:er3eport.jqdefined}),window.addEventListener?window.addEventListener("error",er3eport.listener,!0):window.attachEvent&&window.attachEvent("onerror",er3eport.listener); -------------------------------------------------------------------------------- /upgrade-your-browser/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/upgrade-your-browser/favicon.ico -------------------------------------------------------------------------------- /upgrade-your-browser/images/chrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/upgrade-your-browser/images/chrome.png -------------------------------------------------------------------------------- /upgrade-your-browser/images/edge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/upgrade-your-browser/images/edge.png -------------------------------------------------------------------------------- /upgrade-your-browser/images/firefox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/upgrade-your-browser/images/firefox.png -------------------------------------------------------------------------------- /upgrade-your-browser/images/qqbrowser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/upgrade-your-browser/images/qqbrowser.png -------------------------------------------------------------------------------- /upgrade-your-browser/images/safari.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/upgrade-your-browser/images/safari.png -------------------------------------------------------------------------------- /upgrade-your-browser/images/se360.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhobin/blog-home/a39326365e8c1d8d2affe6ebac5ebde7084cd3cc/upgrade-your-browser/images/se360.png -------------------------------------------------------------------------------- /upgrade-your-browser/index.html: -------------------------------------------------------------------------------- 1 | 请升级您的浏览器

是时候升级你的浏览器了

你正在使用旧版 Internet Explorer( IE11 及以下版本或使用该内核的浏览器 )。这意味着在升级浏览器前,你将无法访问此网站。

请注意:Windows XP 及旧版 Internet Explorer 的支持服务已终止

自2016年1月12日起,微软不再为 IE 11 以下版本提供相应支持和更新。没有关键的浏览器安全更新,您的电脑可能易受有害病毒、间谍软件和其他恶意软件的攻击,它们可以窃取或损害您的业务数据和信息。请参阅 微软对旧版 Internet Explorer 的支持服务已终止的说明

更先进的浏览器

推荐使用以下浏览器的最新版本。如果你的电脑已有以下浏览器的最新版本则直接使用该浏览器或开启极速模式访问即可。

为什么会出现这个页面?

如果你不知道升级浏览器是什么意思,请请教一些熟练电脑操作的朋友。如果你使用的不是 IE6 / 7 / 8 / 9 / 10,而是 Google Chrome、Safari、Microsoft Edge、火狐浏览器等,出现这个页面可能是因为你使用的不是该浏览器的最新版本,升级至最新即可。

一起抵制 IE6、IE7、IE8、IE9、IE10、IE11

为了兼容这个曾经的浏览器霸主,网页设计人员需要做大量的代码工作。对于普通用户而言,低版本 IE 更是一个岌岌可危的安全隐患,在 Windows 历史上几次大的木马病毒事件都是利用 IE 漏洞进行传播。所以,请和我们一起抵制 IE 的过期版本!

Copyright © 2020無名 . All Rights Reserved

-------------------------------------------------------------------------------- /upgrade-your-browser/js/er3eport.min.js: -------------------------------------------------------------------------------- 1 | var _hmt=_hmt||[],er3eport={};er3eport.start=(new Date).getTime(),er3eport.codetime=function(){return(new Date).getTime()-er3eport.start},er3eport.dodnt=function(){window.dnt=1,"function"==typeof window.dodnt&&window.dodnt()},er3eport.jqdefined=function(){_hmt.push(["_setCustomVar",2,"JSERROR","jQueryDefined # "+er3eport.codetime(),3]),er3eport.dodnt()},er3eport.listener=function(e){var t,r=!1,n="JSERROR";"string"==typeof e?r=e:(e.error?r=e.error.stack:e.message&&(r=e.message),e.srcElement&&e.srcElement.src?t=e.srcElement.src:e.target&&e.target.src&&(t=e.target.src),r||(t?(r="FileError: "+t,n="FILEERROR"):e.type&&(r=e.type)));return r="string"!=typeof r?"empty_error_string":r.replace(/\n/g,"").replace(/\s+/g," "),_hmt.push(["_trackEvent",n,window.location.pathname,r+" #UA# "+navigator.userAgent+" # "+er3eport.codetime()]),!0},"function"==typeof jQuery&&er3eport.jqdefined(),Object.defineProperty&&Object.defineProperty(window,"jQuery",{set:er3eport.jqdefined}),window.addEventListener?window.addEventListener("error",er3eport.listener,!0):window.attachEvent&&window.attachEvent("onerror",er3eport.listener); -------------------------------------------------------------------------------- /upgrade-your-browser/js/main.min.js: -------------------------------------------------------------------------------- 1 | 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)\:\/\/.*)$/);null!==r2?r=r2[1]:null!==r1&&(r=r1[2]),""===r&&""!==dr&&null===dr.match(/\/(?:.*\.dmeng\.net|(?:(?:(?:www|m|wap|cn|search)\.)?(?:google|baidu|sogou|bing|so|yahoo|yandex|duckduckgo)\.com(?:\.[a-z]+)?))/)&&(l.href=l.protocol+"//"+l.hostname+l.pathname+"?referrer="+encodeURIComponent(dr)+"&"+s);var url=decodeURIComponent(r);-1!=url.indexOf(window.location.hostname+"/")&&(url="");var targetUrlHTML="";if(""!==url){var m=url.match(/^(https?\:\/\/[^/]+\/)index\.html$/);targetUrlHTML=' '+(m?m[1]:url)+" "} -------------------------------------------------------------------------------- /vercel.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": 2, 3 | "routes": [{ 4 | "handle": "filesystem" 5 | }, 6 | { 7 | "src": "/(.*)", 8 | "status": 404, 9 | "dest": "/" 10 | } 11 | ] 12 | } 13 | --------------------------------------------------------------------------------