优化阅读体验、前台编辑、播放器等

This commit is contained in:
anian
2026-07-22 01:54:46 +08:00
parent 041fd0f7cf
commit 32bf39f733
20 changed files with 896 additions and 653 deletions
+30 -12
View File
@@ -1444,7 +1444,8 @@ a.close_local {
#t_pagination,
#pagination,
#p_pagination {
#p_pagination,
#prev_pagination {
padding: 30px;
text-align: center;
display: flex;
@@ -1454,7 +1455,8 @@ a.close_local {
#t_pagination a,
#pagination a,
#p_pagination a {
#p_pagination a,
#prev_pagination a {
padding: 10px 15px;
background: var(--pix-theme);
color: #fff;
@@ -1462,6 +1464,28 @@ a.close_local {
display: flex;
}
#prev_pagination {
overflow: hidden;
max-height: 0;
opacity: 0;
transform: translateY(-12px);
padding-top: 0;
padding-bottom: 0;
border-top: 0;
border-bottom: 0;
pointer-events: none;
transition: max-height 0.35s ease, opacity 0.3s ease, transform 0.35s ease, padding 0.35s ease, border-color 0.35s ease;
}
#prev_pagination.is-visible {
max-height: 140px;
opacity: 1;
transform: translateY(0);
padding: 30px;
border-bottom: 1px solid var(--pix-background);
pointer-events: auto;
}
.p_item {
padding: 40px 0;
border-bottom: 1px solid var(--pix-background);
@@ -3837,7 +3861,7 @@ a.play_btn i {
}
.player_bar {
height: 3px;
height: 6px;
width: 100%;
background: #ddd;
position: relative;
@@ -3847,7 +3871,7 @@ a.play_btn i {
.player_bar .progress {
position: absolute;
height: 3px;
height: 6px;
background: linear-gradient(90deg, #00b34a, #00e0c7);
left: 0;
top: 0;
@@ -5269,7 +5293,7 @@ a.read-less-btn:hover {
}
a.m_play i {
font-size: 32px;
font-size: 28px;
color: var(--pix-theme);
}
@@ -5763,8 +5787,7 @@ span.edit_post a {
background: rgba(235, 242, 237, 0.8);
border-top: 1px solid #eaeaea;
align-items: center;
border-top-left-radius: 20px;
border-top-right-radius: 20px;
border-radius: 0;
height: 50px;
}
@@ -5985,11 +6008,6 @@ a.change i.ri-refresh-line {
.not_mobile {
display: none;
}
.footer_nav_box {
border-radius: 50px;
}
}
.single_wrap .comments-area,
+55 -3
View File
@@ -481,7 +481,7 @@
backdrop-filter: blur(0.5rem);
-webkit-backdrop-filter: blur(0.5rem);
background: rgb(235 242 237 / 80%);
border-radius: 0 0 20px 20px;
border-radius: 0;
height: 50px;
}
@@ -655,7 +655,6 @@
color: #fff;
}
.player_mod .tool,
a.m_prev,
a.m_next,
.timer,
@@ -664,6 +663,59 @@
display: none;
}
.player_mod .tool {
display: block;
width: 100%;
margin: 4px 0;
position: relative;
z-index: 5;
}
.player_mod .top {
position: relative;
z-index: 1;
}
.player_mod .player_bar {
height: 20px;
background: transparent;
overflow: visible;
touch-action: none;
}
.player_mod .player_bar::before {
content: "";
position: absolute;
top: 50%;
left: 0;
right: 0;
height: 6px;
background: #ddd;
border-radius: 6px;
transform: translateY(-50%);
z-index: 1;
}
.dark .player_mod .player_bar::before {
background: #585858;
}
.player_mod .player_bar .progress {
height: 6px;
top: 50%;
z-index: 2;
transform: translateY(-50%);
}
.player_mod .player_dot {
display: block;
width: 13px;
height: 13px;
margin-right: -9px;
z-index: 9;
box-shadow: 0 2px 8px rgba(0, 0, 0, .18);
}
.player_mod .m_cover {
width: 32px;
height: 32px;
@@ -704,7 +756,7 @@
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
max-width: 100px;
max-width: 90px;
}
.single_music_header .mu_img {
-22
View File
@@ -9,22 +9,6 @@ function modify_m_bottom_music_button_link() {
});
}
// 视频默认正方形,播放恢复比例(接入灯箱后已无用)
// function modify_moment_video_size() {
// const videos = document.querySelectorAll('.pix_video');
// videos.forEach(video => {
// if (!video.hasAttribute('data-video-events-bound')) {
// video.addEventListener('play', () => {
// video.classList.add('is-playing');
// });
// video.addEventListener('ended', () => {
// video.classList.remove('is-playing');
// });
// video.setAttribute('data-video-events-bound', 'true');
// }
// });
// }
// 登录逻辑
let csrfToken = '';
let publicKey = '';
@@ -160,9 +144,6 @@ login_loginBtn.addEventListener('click', async () => {
cocoMessage.success('署名成功,正在跳转...');
login_loginBtn.textContent = '跳转中...';
const currentScrollTop = window.scrollY || document.documentElement.scrollTop;
// $.cookie('scrollParam', currentScrollTop, { path: '/', domain: 'anian.cc' });
// $.cookie('load_type', 'login', { path: '/', domain: 'anian.cc' });
$.cookie('scrollParam', currentScrollTop, { path: '/' });
$.cookie('load_type', 'login', { path: '/' });
window.location.reload();
} else if (finalUrl.includes('error=invalid-credential')) {
@@ -236,9 +217,6 @@ async function customLogout() {
closeLoading();
cocoMessage.success('您已成功退出登录');
const currentScrollTop = window.scrollY || document.documentElement.scrollTop;
// $.cookie('scrollParam', currentScrollTop, { path: '/', domain: 'anian.cc' });
// $.cookie('load_type', 'logout', { path: '/', domain: 'anian.cc' });
$.cookie('scrollParam', currentScrollTop, { path: '/' });
$.cookie('load_type', 'logout', { path: '/' });
window.location.reload();
} else {
+448 -338
View File
File diff suppressed because it is too large Load Diff
+45 -13
View File
@@ -384,20 +384,52 @@ $(document).on('mouseleave', '.footer_nav_box .right_inner', function (event) {
}, 2000);
});
//音乐进度条跳转
function getMousePosition(e) {
var e = e || window.event;
var x = e.pageX;
var y = e.pageY;
return { 'left': x, 'top': y }
//音乐进度条跳转/拖动
var draggingPlayerBar = null;
function getProgressPointerX(event) {
var originalEvent = event.originalEvent || event;
if (originalEvent.touches && originalEvent.touches.length > 0) {
return originalEvent.touches[0].pageX;
}
if (originalEvent.changedTouches && originalEvent.changedTouches.length > 0) {
return originalEvent.changedTouches[0].pageX;
}
return event.pageX || originalEvent.pageX || 0;
}
$(document).on('click', '.player_bar', function () {
var long = (getMousePosition().left) - ($('.progress').offset().left);
$('.progress').width(long);
allTime = parseInt(audiobox[0].duration);
var nowtime = (long / $('.player_bar').width()) * allTime;
audiobox[0].currentTime = nowtime;
function seekPlayerByEvent(event, playerBar) {
var duration = audiobox[0].duration;
if (!duration || !isFinite(duration)) return;
var $playerBar = $(playerBar);
var barWidth = $playerBar.width();
if (!barWidth) return;
var long = getProgressPointerX(event) - $playerBar.offset().left;
long = Math.max(0, Math.min(long, barWidth));
$playerBar.find('.progress').width(long);
audiobox[0].currentTime = (long / barWidth) * duration;
}
$(document).on('mousedown touchstart', '.player_bar', function (event) {
event.preventDefault();
event.stopPropagation();
draggingPlayerBar = this;
seekPlayerByEvent(event, draggingPlayerBar);
});
$(document).on('mousemove touchmove', function (event) {
if (!draggingPlayerBar) return;
event.preventDefault();
seekPlayerByEvent(event, draggingPlayerBar);
});
$(document).on('mouseup touchend touchcancel', function (event) {
if (!draggingPlayerBar) return;
event.preventDefault();
draggingPlayerBar = null;
});
//音量调节 m_volume
@@ -695,4 +727,4 @@ audiobox[0].addEventListener("pause", function () {
function syncFooterWithAudioState() {
var isPlaying = !!(audiobox && audiobox[0] && !audiobox[0].paused && !audiobox[0].ended);
updateFooterMusicIcon(isPlaying);
}
}