mirror of
https://github.com/levywang/avhub.git
synced 2026-02-21 16:57:21 +08:00
增加自动下一个功能
This commit is contained in:
parent
0127ba1003
commit
17133f10bb
@ -146,6 +146,14 @@
|
||||
<span class="ml-2 tab-text" data-zh="自动播放" data-en="Auto Play">自动播放</span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="autoplay-toggle flex items-center">
|
||||
<input type="checkbox" id="autoNextToggle" class="hidden">
|
||||
<label for="autoNextToggle" class="cursor-pointer flex items-center">
|
||||
<span class="toggle-switch"></span>
|
||||
<span class="ml-2 tab-text" data-zh="自动下一个" data-en="Auto Next">自动下一个</span>
|
||||
</label>
|
||||
</div>
|
||||
<button id="nextVideo" class="next-button px-6 py-2">
|
||||
<span class="tab-text" data-zh="下一个" data-en="Next">下一个</span>
|
||||
</button>
|
||||
|
||||
@ -270,6 +270,7 @@ function showCoverImage(searchTerm) {
|
||||
// 视频播放功能
|
||||
let hls = null;
|
||||
let autoplayEnabled = false;
|
||||
let autoNextEnabled = false;
|
||||
|
||||
// 初始化自动播放设置
|
||||
function initializeAutoplaySettings() {
|
||||
@ -287,6 +288,20 @@ function initializeAutoplaySettings() {
|
||||
}
|
||||
}
|
||||
|
||||
function initializeAutoNextToggle() {
|
||||
const autoNextToggle = document.getElementById('autoNextToggle');
|
||||
if (autoNextToggle) {
|
||||
// 从localStorage读取状态
|
||||
autoNextEnabled = localStorage.getItem('autoNextEnabled') === 'true';
|
||||
autoNextToggle.checked = autoNextEnabled;
|
||||
// 绑定change事件
|
||||
autoNextToggle.addEventListener('change', (e) => {
|
||||
autoNextEnabled = e.target.checked;
|
||||
localStorage.setItem('autoNextEnabled', autoNextEnabled);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// 初始化封面图开关设置
|
||||
function initializeCoverToggle() {
|
||||
const coverToggle = document.getElementById('coverToggle');
|
||||
@ -406,6 +421,11 @@ async function loadVideo() {
|
||||
videoPlayer.controls = true;
|
||||
}
|
||||
});
|
||||
videoPlayer.addEventListener('ended', ()=> {
|
||||
if (autoNextEnabled) {
|
||||
loadVideo()}
|
||||
;
|
||||
});
|
||||
|
||||
videoPlayer.classList.remove('loading');
|
||||
notification.classList.remove('show');
|
||||
@ -434,7 +454,7 @@ document.addEventListener('DOMContentLoaded', () => {
|
||||
initializeAutoplaySettings();
|
||||
initializeCopyButton();
|
||||
initializeCoverToggle();
|
||||
|
||||
initializeAutoNextToggle(); // 新增初始化
|
||||
const nextVideoButton = document.getElementById('nextVideo');
|
||||
if (nextVideoButton) {
|
||||
nextVideoButton.addEventListener('click', loadVideo);
|
||||
|
||||
@ -1277,6 +1277,14 @@ body.light-theme select option {
|
||||
transform: translateX(20px);
|
||||
}
|
||||
|
||||
#autoNextToggle:checked + label .toggle-switch {
|
||||
background-color: var(--primary-color);
|
||||
}
|
||||
|
||||
#autoNextToggle:checked + label .toggle-switch::after {
|
||||
transform: translateX(20px);
|
||||
}
|
||||
|
||||
/* 适配移动端全屏问题 */
|
||||
#videoPlayer::-webkit-media-controls {
|
||||
will-change: transform;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user