Merge branch 'liuzhihang:main' into main
This commit is contained in:
commit
52bf70fedd
|
@ -0,0 +1,91 @@
|
||||||
|
if (document.querySelector(".author-content.author-content-item.single")) {
|
||||||
|
const canvas = document.createElement("canvas");
|
||||||
|
canvas.id = "header_canvas";
|
||||||
|
canvas.style.position = "absolute";
|
||||||
|
canvas.style.bottom = "0";
|
||||||
|
canvas.width = 844;
|
||||||
|
canvas.height = 346;
|
||||||
|
document.querySelector(".author-content.author-content-item.single").appendChild(canvas);
|
||||||
|
const parent = document.querySelector(".author-content.author-content-item.single").parentNode;
|
||||||
|
parent.className = "thumbnail_canvas";
|
||||||
|
(function () {
|
||||||
|
var canvas,
|
||||||
|
ctx,
|
||||||
|
width,
|
||||||
|
height,
|
||||||
|
bubbles,
|
||||||
|
animateHeader = true;
|
||||||
|
initHeader();
|
||||||
|
function initHeader() {
|
||||||
|
canvas = document.getElementById("header_canvas");
|
||||||
|
window_resize();
|
||||||
|
if (canvas) {
|
||||||
|
ctx = canvas.getContext("2d");
|
||||||
|
//建立泡泡
|
||||||
|
bubbles = [];
|
||||||
|
var num = width * 0.04; //气泡数量
|
||||||
|
for (var i = 0; i < num; i++) {
|
||||||
|
var c = new Bubble();
|
||||||
|
bubbles.push(c);
|
||||||
|
}
|
||||||
|
animate();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function animate() {
|
||||||
|
if (animateHeader) {
|
||||||
|
ctx.clearRect(0, 0, width, height);
|
||||||
|
for (var i in bubbles) {
|
||||||
|
bubbles[i].draw();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
requestAnimationFrame(animate);
|
||||||
|
}
|
||||||
|
function window_resize() {
|
||||||
|
//canvas铺满窗口
|
||||||
|
//width = window.innerWidth;
|
||||||
|
//height = window.innerHeight;
|
||||||
|
|
||||||
|
//如果需要铺满内容可以换下面这个
|
||||||
|
const panel = document.querySelector(".thumbnail_canvas");
|
||||||
|
if (panel) {
|
||||||
|
width = panel.offsetWidth;
|
||||||
|
height = panel.offsetHeight;
|
||||||
|
|
||||||
|
canvas.width = width;
|
||||||
|
canvas.height = height;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
window.onresize = function () {
|
||||||
|
window_resize();
|
||||||
|
};
|
||||||
|
function Bubble() {
|
||||||
|
var _this = this;
|
||||||
|
(function () {
|
||||||
|
_this.pos = {};
|
||||||
|
init();
|
||||||
|
})();
|
||||||
|
function init() {
|
||||||
|
_this.pos.x = Math.random() * width;
|
||||||
|
_this.pos.y = height + Math.random() * 100;
|
||||||
|
_this.alpha = 0.1 + Math.random() * 0.5; //气泡透明度
|
||||||
|
_this.alpha_change = 0.0002 + Math.random() * 0.0005; //气泡透明度变化速度
|
||||||
|
_this.scale = 0.2 + Math.random() * 0.8; //气泡大小
|
||||||
|
_this.scale_change = Math.random() * 0.002; //气泡大小变化速度
|
||||||
|
_this.speed = 0.1 + Math.random() * 0.4; //气泡上升速度
|
||||||
|
}
|
||||||
|
//气泡
|
||||||
|
this.draw = function () {
|
||||||
|
if (_this.alpha <= 0) {
|
||||||
|
init();
|
||||||
|
}
|
||||||
|
_this.pos.y -= _this.speed;
|
||||||
|
_this.alpha -= _this.alpha_change;
|
||||||
|
_this.scale += _this.scale_change;
|
||||||
|
ctx.beginPath();
|
||||||
|
ctx.arc(_this.pos.x, _this.pos.y, _this.scale * 10, 0, 2 * Math.PI, false);
|
||||||
|
ctx.fillStyle = "rgba(255,255,255," + _this.alpha + ")";
|
||||||
|
ctx.fill();
|
||||||
|
};
|
||||||
|
}
|
||||||
|
})();
|
||||||
|
}
|
|
@ -0,0 +1,746 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en" th:replace="~{modules/layouts/layout :: layout(content = ~{::content}, htmlType = 'bangumis')}"
|
||||||
|
xmlns:th="http://www.thymeleaf.org">
|
||||||
|
|
||||||
|
<th:block th:fragment="content">
|
||||||
|
|
||||||
|
<div class="page" id="body-wrap">
|
||||||
|
|
||||||
|
<!-- 头部导航栏 -->
|
||||||
|
<header class="not-top-img" id="page-header">
|
||||||
|
<nav th:replace="~{modules/nav :: nav(title = null)}"></nav>
|
||||||
|
</header>
|
||||||
|
<main class="layout hide-aside" id="content-inner">
|
||||||
|
<div id="page">
|
||||||
|
<h1 class="page-title" style="display: inline;">追番列表</h1>
|
||||||
|
<div id="article-container">
|
||||||
|
<blockquote><p>生命不息,追番不止!</p></blockquote>
|
||||||
|
<style>
|
||||||
|
.bangumi-tabs {
|
||||||
|
margin-bottom: 15px;
|
||||||
|
margin-top: 15px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-tab {
|
||||||
|
padding: 5px
|
||||||
|
}
|
||||||
|
|
||||||
|
a.bangumi-tab {
|
||||||
|
text-decoration: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-active {
|
||||||
|
background: #657b83;
|
||||||
|
color: #fff
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-item {
|
||||||
|
position: relative;
|
||||||
|
clear: both;
|
||||||
|
padding: 10px 0;
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
|
min-height: 180px
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 600px) {
|
||||||
|
.bangumi-item {
|
||||||
|
width: 100%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-picture {
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
top: 10px;
|
||||||
|
width: 110px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-picture img {
|
||||||
|
margin: 10px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info {
|
||||||
|
padding-left: 120px;
|
||||||
|
margin-top: 10px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-meta {
|
||||||
|
font-size: 12px;
|
||||||
|
padding-right: 10px;
|
||||||
|
height: 45px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-comments {
|
||||||
|
font-size: 12px;
|
||||||
|
margin-top: 10px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-comments > p {
|
||||||
|
word-break: break-all;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
overflow: hidden;
|
||||||
|
white-space: normal;
|
||||||
|
display: -webkit-box;
|
||||||
|
-webkit-box-orient: vertical;
|
||||||
|
-webkit-line-clamp: 3
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-pagination {
|
||||||
|
margin-top: 15px;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 10px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-button {
|
||||||
|
padding: 5px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-button:hover {
|
||||||
|
background: #657b83;
|
||||||
|
color: #fff
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-hide {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-show {
|
||||||
|
display: block
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-title {
|
||||||
|
font-size: 18px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-title a {
|
||||||
|
line-height: 1;
|
||||||
|
text-decoration: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-items {
|
||||||
|
font-size: 12px;
|
||||||
|
color: #2fd8d8;
|
||||||
|
padding-top: 10px;
|
||||||
|
line-height: 1;
|
||||||
|
float: left;
|
||||||
|
width: 100%
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item {
|
||||||
|
display: inline-block;
|
||||||
|
width: 13%;
|
||||||
|
border-right: 1px solid #2fd8d8;
|
||||||
|
text-align: center;
|
||||||
|
height: 34px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-label {
|
||||||
|
display: block;
|
||||||
|
line-height: 12px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item em {
|
||||||
|
display: block;
|
||||||
|
padding-top: 6px;
|
||||||
|
line-height: 17px;
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-total {
|
||||||
|
padding-top: 11px;
|
||||||
|
display: block;
|
||||||
|
line-height: 12px;
|
||||||
|
font-weight: 700
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item-score {
|
||||||
|
border-right: 1px solid #0000;
|
||||||
|
width: 50px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-label-em {
|
||||||
|
color: transparent;
|
||||||
|
opacity: 0;
|
||||||
|
visibility: hidden;
|
||||||
|
line-height: 6px !important;
|
||||||
|
padding: 0 !important
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 650px) {
|
||||||
|
.bangumi-coin, .bangumi-type {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item {
|
||||||
|
width: 16%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 590px) {
|
||||||
|
.bangumi-danmaku, .bangumi-wish {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item {
|
||||||
|
width: 19%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 520px) {
|
||||||
|
.bangumi-doing, .bangumi-play {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item {
|
||||||
|
width: 24%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 480px) {
|
||||||
|
.bangumi-collect, .bangumi-follow {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item {
|
||||||
|
width: 30%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 400px) {
|
||||||
|
.bangumi-area {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item {
|
||||||
|
width: 45%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-my-comments {
|
||||||
|
border: 1px dashed #8f8f8f;
|
||||||
|
padding: 3px;
|
||||||
|
border-radius: 5px;
|
||||||
|
margin-left: -120px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starstop {
|
||||||
|
background: url(https://cdn.jsdelivr.net/npm/hexo-bilibili-bangumi@1.7.9/lib/img/rate_star_2x.png) 100% 100%/10px 19.5px repeat-x;
|
||||||
|
height: 10px;
|
||||||
|
width: 50px;
|
||||||
|
display: inline-block;
|
||||||
|
float: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight {
|
||||||
|
background: url(https://cdn.jsdelivr.net/npm/hexo-bilibili-bangumi@1.7.9/lib/img/rate_star_2x.png) 0 0/10px 19.5px repeat-x;
|
||||||
|
height: 10px;
|
||||||
|
display: block;
|
||||||
|
width: 100%
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight.stars1 {
|
||||||
|
width: 5px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight.stars2 {
|
||||||
|
width: 10px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight.stars3 {
|
||||||
|
width: 15px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight.stars4 {
|
||||||
|
width: 20px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight.stars5 {
|
||||||
|
width: 25px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight.stars6 {
|
||||||
|
width: 30px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight.stars7 {
|
||||||
|
width: 35px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight.stars8 {
|
||||||
|
width: 40px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight.stars9 {
|
||||||
|
width: 45px
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-starlight.stars10 {
|
||||||
|
width: 50px
|
||||||
|
}
|
||||||
|
|
||||||
|
#article-container .bangumi-picture a {
|
||||||
|
padding-left: 0px;
|
||||||
|
padding-right: 0px;
|
||||||
|
border-bottom-width: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page #article-container .bangumi-tab.bangumi-active {
|
||||||
|
background: var(--heo-theme);
|
||||||
|
color: var(--heo-ahoverbg);
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page #article-container .bangumi-tabs .bangumi-tab {
|
||||||
|
border-bottom: none;
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page #article-container .bangumi-tabs a.bangumi-tab:hover {
|
||||||
|
text-decoration: none !important;
|
||||||
|
border-radius: 10px;
|
||||||
|
column-gap: var(--heo-ahoverbg);
|
||||||
|
}
|
||||||
|
|
||||||
|
#page #article-container .bangumi-pagination a.bangumi-button {
|
||||||
|
border-bottom: none;
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-button:hover {
|
||||||
|
background: var(--heo-theme) !important;
|
||||||
|
border-radius: 10px !important;
|
||||||
|
color: var(--heo-ahoverbg) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.bangumi-button.bangumi-nextpage:hover {
|
||||||
|
text-decoration: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-button {
|
||||||
|
padding: 5px 10px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.bangumi-tab {
|
||||||
|
padding: 5px 10px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
svg.icon.faa-tada {
|
||||||
|
font-size: 1.1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item {
|
||||||
|
border-right: 1px solid #f2b94b;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item span {
|
||||||
|
color: #f2b94b;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bangumi-info-item em {
|
||||||
|
color: #f2b94b;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<div class="bangumi-tabs">
|
||||||
|
<a class="bangumi-tab" id="bangumi-tab1" href="javascript:;"
|
||||||
|
rel="external" target="_self" onclick="return!1" data-pjax-state="">想看 (10)</a>
|
||||||
|
<a class="bangumi-tab bangumi-active" id="bangumi-tab2" href="javascript:;"
|
||||||
|
rel="external" target="_self" onclick="return!1" data-pjax-state="">在看 (55)</a>
|
||||||
|
<a class="bangumi-tab" id="bangumi-tab3" href="javascript:;" rel="external" target="_self"
|
||||||
|
onclick="return!1" data-pjax-state="">已看 (43)</a>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div id="bangumi-item1" class="bangumi-hide">
|
||||||
|
<div class="bangumi-item">
|
||||||
|
<div class="bangumi-picture">
|
||||||
|
<a
|
||||||
|
href="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg"
|
||||||
|
data-fancybox="gallery" data-caption=""
|
||||||
|
data-thumb="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg">
|
||||||
|
<img
|
||||||
|
src="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg"
|
||||||
|
data-lazy-src="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg"
|
||||||
|
referrerpolicy="no-referrer" width="110"
|
||||||
|
style="width:110px;margin:20px auto">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-info">
|
||||||
|
<div class="bangumi-title">
|
||||||
|
<a target="_blank"
|
||||||
|
href="https://www.bilibili.com/bangumi/media/md28237126/"
|
||||||
|
rel="external nofollow noreferrer">夏日重现</a>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-meta">
|
||||||
|
<span class="bangumi-info-items">
|
||||||
|
<span class="bangumi-info-item">
|
||||||
|
<span class="bangumi-info-total">全25话</span>
|
||||||
|
<em class="bangumi-info-label-em">0</em>
|
||||||
|
</span>
|
||||||
|
<span class="bangumi-info-item bangumi-area">
|
||||||
|
<span class="bangumi-info-label">番剧</span>
|
||||||
|
<em>日本</em>
|
||||||
|
</span>
|
||||||
|
<span class="bangumi-info-item bangumi-play">
|
||||||
|
<span
|
||||||
|
class="bangumi-info-label">总播放</span>
|
||||||
|
<em>2.1 亿</em>
|
||||||
|
</span>
|
||||||
|
<span
|
||||||
|
class="bangumi-info-item bangumi-follow"><span
|
||||||
|
class="bangumi-info-label">追番人数</span>
|
||||||
|
<em>439.7 万</em>
|
||||||
|
</span>
|
||||||
|
<span
|
||||||
|
class="bangumi-info-item bangumi-coin"><span
|
||||||
|
class="bangumi-info-label">硬币数</span>
|
||||||
|
<em>136.5 万</em>
|
||||||
|
</span>
|
||||||
|
<span
|
||||||
|
class="bangumi-info-item bangumi-danmaku">
|
||||||
|
<span
|
||||||
|
class="bangumi-info-label">弹幕总数</span>
|
||||||
|
<em>127.4 万</em>
|
||||||
|
</span> <span
|
||||||
|
class="bangumi-info-item bangumi-info-item-score">
|
||||||
|
<span
|
||||||
|
class="bangumi-info-label">评分</span>
|
||||||
|
<em>9.8</em>
|
||||||
|
</span>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-comments">
|
||||||
|
<p>简介:“潮死了。”
|
||||||
|
网代慎平收到发小——小舟潮的讣告后,回到了阔别两年的故乡——和歌山市日都岛。
|
||||||
|
慎平与亲人朋友重聚,葬礼也顺利地进行着。 然而,好友告诉他“潮的死有疑点,可能是他杀”。
|
||||||
|
第二天,邻近...
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-pagination">
|
||||||
|
<a class="bangumi-button bangumi-firstpage"
|
||||||
|
href="javascript:;" rel="external nofollow noreferrer"
|
||||||
|
target="_self" onclick="return!1"
|
||||||
|
data-pjax-state="">首页</a>
|
||||||
|
<a
|
||||||
|
class="bangumi-button bangumi-previouspage" href="javascript:;"
|
||||||
|
rel="external nofollow noreferrer" target="_self" onclick="return!1"
|
||||||
|
data-pjax-state="">上一页</a>
|
||||||
|
<span class="bangumi-pagenum">1 / 5</span>
|
||||||
|
<a
|
||||||
|
class="bangumi-button bangumi-nextpage" href="javascript:;"
|
||||||
|
rel="external nofollow noreferrer" target="_self" onclick="return!1"
|
||||||
|
data-pjax-state="">下一页</a>
|
||||||
|
<a class="bangumi-button bangumi-lastpage"
|
||||||
|
href="javascript:;"
|
||||||
|
rel="external nofollow noreferrer" target="_self"
|
||||||
|
onclick="return!1" data-pjax-state="">尾页</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="bangumi-item2" class="bangumi-show">
|
||||||
|
<div class="bangumi-item">
|
||||||
|
<div class="bangumi-picture">
|
||||||
|
<a
|
||||||
|
href="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg"
|
||||||
|
data-fancybox="gallery" data-caption=""
|
||||||
|
data-thumb="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg">
|
||||||
|
<img
|
||||||
|
src="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg"
|
||||||
|
data-lazy-src="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg"
|
||||||
|
referrerpolicy="no-referrer" width="110"
|
||||||
|
style="width:110px;margin:20px auto">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-info">
|
||||||
|
<div class="bangumi-title">
|
||||||
|
<a target="_blank"
|
||||||
|
href="https://www.bilibili.com/bangumi/media/md28237126/"
|
||||||
|
rel="external nofollow noreferrer">夏日重现</a>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-meta">
|
||||||
|
<span class="bangumi-info-items">
|
||||||
|
<span class="bangumi-info-item">
|
||||||
|
<span class="bangumi-info-total">全25话</span>
|
||||||
|
<em class="bangumi-info-label-em">0</em>
|
||||||
|
</span>
|
||||||
|
<span class="bangumi-info-item bangumi-area">
|
||||||
|
<span class="bangumi-info-label">番剧</span>
|
||||||
|
<em>日本</em>
|
||||||
|
</span>
|
||||||
|
<span class="bangumi-info-item bangumi-play">
|
||||||
|
<span
|
||||||
|
class="bangumi-info-label">总播放</span>
|
||||||
|
<em>2.1 亿</em>
|
||||||
|
</span>
|
||||||
|
<span
|
||||||
|
class="bangumi-info-item bangumi-follow"><span
|
||||||
|
class="bangumi-info-label">追番人数</span>
|
||||||
|
<em>439.7 万</em>
|
||||||
|
</span>
|
||||||
|
<span
|
||||||
|
class="bangumi-info-item bangumi-coin"><span
|
||||||
|
class="bangumi-info-label">硬币数</span>
|
||||||
|
<em>136.5 万</em>
|
||||||
|
</span>
|
||||||
|
<span
|
||||||
|
class="bangumi-info-item bangumi-danmaku">
|
||||||
|
<span
|
||||||
|
class="bangumi-info-label">弹幕总数</span>
|
||||||
|
<em>127.4 万</em>
|
||||||
|
</span> <span
|
||||||
|
class="bangumi-info-item bangumi-info-item-score">
|
||||||
|
<span
|
||||||
|
class="bangumi-info-label">评分</span>
|
||||||
|
<em>9.8</em>
|
||||||
|
</span>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-comments">
|
||||||
|
<p>简介:“潮死了。”
|
||||||
|
网代慎平收到发小——小舟潮的讣告后,回到了阔别两年的故乡——和歌山市日都岛。
|
||||||
|
慎平与亲人朋友重聚,葬礼也顺利地进行着。 然而,好友告诉他“潮的死有疑点,可能是他杀”。
|
||||||
|
第二天,邻近...
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-pagination">
|
||||||
|
<a class="bangumi-button bangumi-firstpage"
|
||||||
|
href="javascript:;" rel="external nofollow noreferrer"
|
||||||
|
target="_self" onclick="return!1"
|
||||||
|
data-pjax-state="">首页</a>
|
||||||
|
<a
|
||||||
|
class="bangumi-button bangumi-previouspage" href="javascript:;"
|
||||||
|
rel="external nofollow noreferrer" target="_self" onclick="return!1"
|
||||||
|
data-pjax-state="">上一页</a>
|
||||||
|
<span class="bangumi-pagenum">1 / 5</span>
|
||||||
|
<a
|
||||||
|
class="bangumi-button bangumi-nextpage" href="javascript:;"
|
||||||
|
rel="external nofollow noreferrer" target="_self" onclick="return!1"
|
||||||
|
data-pjax-state="">下一页</a>
|
||||||
|
<a class="bangumi-button bangumi-lastpage"
|
||||||
|
href="javascript:;"
|
||||||
|
rel="external nofollow noreferrer" target="_self"
|
||||||
|
onclick="return!1" data-pjax-state="">尾页</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="bangumi-item3" class="bangumi-hide">
|
||||||
|
<div class="bangumi-item">
|
||||||
|
<div class="bangumi-picture">
|
||||||
|
<a
|
||||||
|
href="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg"
|
||||||
|
data-fancybox="gallery" data-caption=""
|
||||||
|
data-thumb="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg">
|
||||||
|
<img
|
||||||
|
src="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg"
|
||||||
|
data-lazy-src="https://i0.hdslb.com/bfs/bangumi/image/4b2547ffdd6f40f997454b37c0ad48624a1730d9.jpg"
|
||||||
|
referrerpolicy="no-referrer" width="110"
|
||||||
|
style="width:110px;margin:20px auto">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-info">
|
||||||
|
<div class="bangumi-title">
|
||||||
|
<a target="_blank"
|
||||||
|
href="https://www.bilibili.com/bangumi/media/md28237126/"
|
||||||
|
rel="external nofollow noreferrer">夏日重现</a>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-meta">
|
||||||
|
<span class="bangumi-info-items">
|
||||||
|
<span class="bangumi-info-item">
|
||||||
|
<span class="bangumi-info-total">全25话</span>
|
||||||
|
<em class="bangumi-info-label-em">0</em>
|
||||||
|
</span>
|
||||||
|
<span class="bangumi-info-item bangumi-area">
|
||||||
|
<span class="bangumi-info-label">番剧</span>
|
||||||
|
<em>日本</em>
|
||||||
|
</span>
|
||||||
|
<span class="bangumi-info-item bangumi-play">
|
||||||
|
<span
|
||||||
|
class="bangumi-info-label">总播放</span>
|
||||||
|
<em>2.1 亿</em>
|
||||||
|
</span>
|
||||||
|
<span
|
||||||
|
class="bangumi-info-item bangumi-follow"><span
|
||||||
|
class="bangumi-info-label">追番人数</span>
|
||||||
|
<em>439.7 万</em>
|
||||||
|
</span>
|
||||||
|
<span
|
||||||
|
class="bangumi-info-item bangumi-coin"><span
|
||||||
|
class="bangumi-info-label">硬币数</span>
|
||||||
|
<em>136.5 万</em>
|
||||||
|
</span>
|
||||||
|
<span
|
||||||
|
class="bangumi-info-item bangumi-danmaku">
|
||||||
|
<span
|
||||||
|
class="bangumi-info-label">弹幕总数</span>
|
||||||
|
<em>127.4 万</em>
|
||||||
|
</span> <span
|
||||||
|
class="bangumi-info-item bangumi-info-item-score">
|
||||||
|
<span
|
||||||
|
class="bangumi-info-label">评分</span>
|
||||||
|
<em>9.8</em>
|
||||||
|
</span>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-comments">
|
||||||
|
<p>简介:“潮死了。”
|
||||||
|
网代慎平收到发小——小舟潮的讣告后,回到了阔别两年的故乡——和歌山市日都岛。
|
||||||
|
慎平与亲人朋友重聚,葬礼也顺利地进行着。 然而,好友告诉他“潮的死有疑点,可能是他杀”。
|
||||||
|
第二天,邻近...
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="bangumi-pagination">
|
||||||
|
<a class="bangumi-button bangumi-firstpage"
|
||||||
|
href="javascript:;" rel="external nofollow noreferrer"
|
||||||
|
target="_self" onclick="return!1"
|
||||||
|
data-pjax-state="">首页</a>
|
||||||
|
<a
|
||||||
|
class="bangumi-button bangumi-previouspage" href="javascript:;"
|
||||||
|
rel="external nofollow noreferrer" target="_self" onclick="return!1"
|
||||||
|
data-pjax-state="">上一页</a>
|
||||||
|
<span class="bangumi-pagenum">1 / 5</span>
|
||||||
|
<a
|
||||||
|
class="bangumi-button bangumi-nextpage" href="javascript:;"
|
||||||
|
rel="external nofollow noreferrer" target="_self" onclick="return!1"
|
||||||
|
data-pjax-state="">下一页</a>
|
||||||
|
<a class="bangumi-button bangumi-lastpage"
|
||||||
|
href="javascript:;"
|
||||||
|
rel="external nofollow noreferrer" target="_self"
|
||||||
|
onclick="return!1" data-pjax-state="">尾页</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
(function () {
|
||||||
|
const bangumiLazyload = false;
|
||||||
|
"use strict";/* eslint-disable no-plusplus */
|
||||||
|
(function () {// eslint-disable-next-line func-style
|
||||||
|
function a() {
|
||||||
|
this.classList.add("bangumi-active");
|
||||||
|
for (var a = this.siblings(), b = 0; b < a.length; b++) a[b].classList.remove("bangumi-active");// 显示对应板块
|
||||||
|
var c = this.id.replace("tab", "item"), d = document.getElementById(c);
|
||||||
|
d.classList.remove("bangumi-hide"), d.classList.add("bangumi-show"), a = document.getElementById(c).siblings();
|
||||||
|
for (var e = 0; e < a.length; e++) a[e].classList.remove("bangumi-show"), a[e].classList.add("bangumi-hide")
|
||||||
|
}
|
||||||
|
|
||||||
|
Element.prototype.siblings = function () {
|
||||||
|
for (var a = [], b = this.parentNode.children, c = 0; c < b.length; c++) b[c] !== this && a.push(b[c]);
|
||||||
|
return a
|
||||||
|
};
|
||||||
|
for (var b = document.getElementsByClassName("bangumi-tab"), c = 0; c < b.length; c++) b[c].onclick = a, b[c].onclick.apply(b[c]);
|
||||||
|
"undefined" != typeof pagenumsPre && axios.get(new URL("../bangumis.json", window.location.href)).then(function (a) {
|
||||||
|
if (a.data) {
|
||||||
|
var b = {
|
||||||
|
wantWatch: a.data.wantWatch.slice(10).map(function (a) {
|
||||||
|
return ejs.render(ejsTemplate, {
|
||||||
|
item: a,
|
||||||
|
loading: loading,
|
||||||
|
metaColor: metaColor,
|
||||||
|
type: type
|
||||||
|
})
|
||||||
|
}).join("\n"), watching: a.data.watching.slice(10).map(function (a) {
|
||||||
|
return ejs.render(ejsTemplate, {
|
||||||
|
item: a,
|
||||||
|
loading: loading,
|
||||||
|
metaColor: metaColor,
|
||||||
|
type: type
|
||||||
|
})
|
||||||
|
}).join("\n"), watched: a.data.watched.slice(10).map(function (a) {
|
||||||
|
return ejs.render(ejsTemplate, {
|
||||||
|
item: a,
|
||||||
|
loading: loading,
|
||||||
|
metaColor: metaColor,
|
||||||
|
type: type
|
||||||
|
})
|
||||||
|
}).join("\n")
|
||||||
|
};
|
||||||
|
document.querySelectorAll("#bangumi-item1>.bangumi-pagination")[0].insertAdjacentHTML("beforeBegin", b.wantWatch), document.querySelectorAll("#bangumi-item2>.bangumi-pagination")[0].insertAdjacentHTML("beforeBegin", b.watching), document.querySelectorAll("#bangumi-item3>.bangumi-pagination")[0].insertAdjacentHTML("beforeBegin", b.watched)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})();
|
||||||
|
document.getElementsByClassName('bangumi-tab')[1].click();
|
||||||
|
/* eslint-disable no-plusplus, func-style */
|
||||||
|
(function () {
|
||||||
|
var a = Math.ceil;
|
||||||
|
|
||||||
|
function b(b, c) {
|
||||||
|
return `${b + 1} / ${a(0 == c.length / 10 ? 1 : a(c.length / 10))}`
|
||||||
|
}
|
||||||
|
|
||||||
|
function c() {
|
||||||
|
const a = this.parentNode.siblings();
|
||||||
|
g(a, 0), this.parentNode.getElementsByClassName("bangumi-pagenum")[0].innerText = b(0, a)
|
||||||
|
}
|
||||||
|
|
||||||
|
function d() {
|
||||||
|
const a = this.parentNode.siblings();
|
||||||
|
let c = this.parentNode.getElementsByClassName("bangumi-pagenum")[0].innerText;
|
||||||
|
c = c.substr(0, c.indexOf("/") - 1), c = parseInt(c, 10) - 1, 0 < c && c--, g(a, c), this.parentNode.getElementsByClassName("bangumi-pagenum")[0].innerText = b(c, a)
|
||||||
|
}
|
||||||
|
|
||||||
|
function e() {
|
||||||
|
const c = this.parentNode.siblings();
|
||||||
|
let d = this.parentNode.getElementsByClassName("bangumi-pagenum")[0].innerText;
|
||||||
|
d = d.substr(0, d.indexOf("/") - 1), d = parseInt(d, 10) - 1, d < a(c.length / 10) - 1 && d++, g(c, d), this.parentNode.getElementsByClassName("bangumi-pagenum")[0].innerText = b(d, c)
|
||||||
|
}
|
||||||
|
|
||||||
|
function f() {
|
||||||
|
const c = this.parentNode.siblings();
|
||||||
|
g(c, a(c.length / 10) - 1), this.parentNode.getElementsByClassName("bangumi-pagenum")[0].innerText = b(-1 == a(c.length / 10) - 1 ? 0 : a(c.length / 10) - 1, c)
|
||||||
|
}
|
||||||
|
|
||||||
|
function g(a, b) {
|
||||||
|
for (let c = 0; c < a.length; c++) if (Math.floor(c / 10) === b) {
|
||||||
|
a[c].classList.remove("bangumi-hide");
|
||||||
|
const [b] = a[c].getElementsByTagName("img");
|
||||||
|
bangumiLazyload && (b.src = b.getAttribute("data-src"))
|
||||||
|
} else a[c].classList.add("bangumi-hide")
|
||||||
|
}
|
||||||
|
|
||||||
|
const h = document.getElementsByClassName("bangumi-firstpage"),
|
||||||
|
j = document.getElementsByClassName("bangumi-previouspage"),
|
||||||
|
k = document.getElementsByClassName("bangumi-nextpage"),
|
||||||
|
l = document.getElementsByClassName("bangumi-lastpage"),
|
||||||
|
m = document.getElementsByClassName("bangumi-pagenum");
|
||||||
|
for (let b = 0; b < h.length; b++) {
|
||||||
|
h[b].onclick = c, j[b].onclick = d, k[b].onclick = e, l[b].onclick = f;// set page num
|
||||||
|
const g = "undefined" == typeof pagenumsPre ? m[b].parentNode.siblings().length : pagenumsPre[b] ?? m[b].parentNode.siblings().length;
|
||||||
|
h[b].click(), m[b].innerText = `1 / ${0 === a(g / 10) ? 1 : a(g / 10)}`
|
||||||
|
}
|
||||||
|
})();
|
||||||
|
})();
|
||||||
|
</script>
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
<!-- 评论模块 -->
|
||||||
|
<th:block
|
||||||
|
th:if="${theme.config.comments.twikooEnable && #strings.equals(theme.config.comments.use, 'Twikoo') && not #strings.isEmpty(theme.config.comments.twikoos.envId)}">
|
||||||
|
<div th:replace="~{modules/twikoo :: twikoo}"></div>
|
||||||
|
</th:block>
|
||||||
|
<div id="post-comment"
|
||||||
|
th:if="${pluginFinder.available('PluginCommentWidget') && #strings.equals(theme.config.comments.use, 'commentWidget')}">
|
||||||
|
<div class="comment-head">
|
||||||
|
<div class="comment-headline"><i class="iconfont icon-comment-alt"></i> <span>评论</span></div>
|
||||||
|
<div class="comment-privacy"><a href="/privacy">隐私政策</a></div>
|
||||||
|
<div class="comment-tips" id="comment-tips">
|
||||||
|
<span>你无需删除空行,直接评论以获取最佳展示效果</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<halo:comment group="content.halo.run" kind="SinglePage"
|
||||||
|
th:attr="name=${singlePage.metadata.name}"
|
||||||
|
colorScheme="document.documentElement.getAttribute('data-theme')"/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</main>
|
||||||
|
<!-- 底部 -->
|
||||||
|
<footer th:replace="~{modules/footer :: footer}"></footer>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</th:block>
|
||||||
|
|
||||||
|
</html>
|
|
@ -283,6 +283,9 @@
|
||||||
case 'comments':
|
case 'comments':
|
||||||
title = '留言板'
|
title = '留言板'
|
||||||
break;
|
break;
|
||||||
|
case 'bangumis':
|
||||||
|
title = '追番页'
|
||||||
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
if (title != '')
|
if (title != '')
|
||||||
|
|
|
@ -27,6 +27,8 @@
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<canvas id="header_canvas" width="1216" height="1871"
|
||||||
|
style="position: absolute; bottom: 0px;"></canvas>
|
||||||
</div>
|
</div>
|
||||||
<div id="bber">
|
<div id="bber">
|
||||||
<section class="timeline page-1">
|
<section class="timeline page-1">
|
||||||
|
@ -82,6 +84,7 @@
|
||||||
</main>
|
</main>
|
||||||
<!-- 底部 -->
|
<!-- 底部 -->
|
||||||
<footer th:replace="~{modules/footer :: footer}"></footer>
|
<footer th:replace="~{modules/footer :: footer}"></footer>
|
||||||
|
<script async data-pjax th:src="${assets_link + '/libs/canvas/bubble.js'}"></script>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</th:block>
|
</th:block>
|
||||||
|
|
|
@ -29,6 +29,10 @@ spec:
|
||||||
description: 留言板页面
|
description: 留言板页面
|
||||||
screenshot:
|
screenshot:
|
||||||
file: comments.html
|
file: comments.html
|
||||||
|
- name: 追番页面模版
|
||||||
|
description: 追番页面
|
||||||
|
screenshot:
|
||||||
|
file: bangumis.html
|
||||||
description: Halo 2.x Theme base on Thymeleaf, Referring to Butterfly and Heo
|
description: Halo 2.x Theme base on Thymeleaf, Referring to Butterfly and Heo
|
||||||
logo: https://liuzhihang.com/upload/logo.jpg
|
logo: https://liuzhihang.com/upload/logo.jpg
|
||||||
website: https://liuzhihang.com
|
website: https://liuzhihang.com
|
||||||
|
|
Loading…
Reference in New Issue