Hexo-留言板全屏弹幕滚动-Twikoo

实现代码

直接在需要显示的全屏弹幕页面的md文件中直接添加如下代码
只需要修改openBarrage(your-twikoo-server-url)地址。
js全部本地化保存到source/custom/barrage/

本博客完全开源:仓库源码地址

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<script src="/custom/barrage/jquery_3.6.0_jquery.min.js"></script>
<script src="/custom/barrage/jquery.barrager-1.1.min.js"></script>
<script src="/custom/barrage/barrage-twikoo.js"></script>

<style>
/* 评论弹幕 */
.barrage {
position: fixed;
right: -500px;
display: inline-block;
width: fit-content;
z-index: 9999
}
.barrage_box {
display: flex;
background-color: rgba(0, 0, 0, .5);
padding-right: 8px;
height: 40px;
border-radius: 25px;
}
.barrage_box .portrait {
display: inline-block;
margin-top: 4px;
margin-left: 4px;
width: 32px;
height: 32px;
border-radius: 50%;
overflow: hidden;
}
.barrage_box .portrait img {
width: 100%;
height: 100%;
}
.barrage_box div.p a {
display: inline-block;
white-space: nowrap;
max-width: 25rem;
margin-right: 2px;
font-size: 14px;
line-height: 40px;
margin-left: 10px;
overflow: hidden;
text-overflow: ellipsis;
text-decoration: none;
}
.barrage_box div.p a:hover {
text-decoration: underline;
}
</style>

> 欢迎留言

<div class="btn-center">
{% btn 'javascript:openBarrage();',"开启弹幕",anzhiyufont anzhiyu-icon-circle-arrow-right,outline green larger %}
{% btn 'javascript:closeBarrage();',关闭弹幕,anzhiyufont anzhiyu-icon-circle-arrow-right,outline red larger %}
</div>

<div id="loading"></div>

<script>
//location.reload();
let lastUrl = window.location.href || 'xx';
//alert('lastUrl ='+ lastUrl);
if ( lastUrl.indexOf('/guestbook')< 0 ){
//alert('reload')
setTimeout(function(){location.reload();},100);
}

window.addEventListener('load', (event) => {
// twikooEnVid twikoo服务地址获取所有弹幕
openBarrage('https://twikoo.geekswg.top/');
});
</script>

预览效果

我的留言板-全屏弹幕

已经完善,添加开启和关闭弹幕功能按钮。

目前已知问题,无法关闭弹幕,别的页面也会一直显示全屏滚动的弹幕。

本文参考: