feat(前端优化): 针对小屏幕优化WebUI
build.yaml / build (push) Successful in 36s

This commit is contained in:
xiaoqidun committed 2026-09-08 01:06:58 +08:00
1 parent a2814b3a93
commit 2a022ba73e
2 files changed
+13 -10

No files matched your search

+2 -2
View File
@@ -35,7 +35,7 @@ body {
margin: 0;
width: 100%;
min-width: 320px;
min-height: 100vh;
min-height: 100dvh;
overflow: hidden;
background: #eef1f4;
}
@@ -73,7 +73,7 @@ a:focus-visible {
display: grid;
grid-template-rows: auto minmax(0, 1fr) auto;
width: 100%;
height: 100vh;
height: 100dvh;
overflow: hidden;
}
+11 -8
View File
@@ -151,11 +151,7 @@ el.pageInput.addEventListener("change", () => {
renderPage(page - 1);
}
});
window.addEventListener("resize", () => {
if (state.doc) {
applyFit(false);
}
});
window.addEventListener("resize", resizeViewer);
COMPACT_LAYOUT.addEventListener("change", syncLayoutMode);
el.viewerPanel.addEventListener("scroll", () => {
schedulePageSync();
@@ -193,14 +189,14 @@ function toggleSidebar(side) {
state.showMeta = !state.showMeta;
}
updateSidebarState();
if (state.doc) {
applyFit(false);
}
resizeViewer();
}
function updateSidebarState() {
document.body.toggleAttribute("data-hide-pages", !state.showPages);
document.body.toggleAttribute("data-hide-meta", !state.showMeta);
el.pageListPanel.inert = !state.showPages;
el.metaPanel.inert = !state.showMeta;
el.togglePagesButton.setAttribute("aria-pressed", String(state.showPages));
el.toggleMetaButton.setAttribute("aria-pressed", String(state.showMeta));
}
@@ -209,8 +205,15 @@ function syncLayoutMode(event) {
state.showPages = !event.matches;
state.showMeta = !event.matches;
updateSidebarState();
resizeViewer();
}
function resizeViewer() {
if (state.doc) {
applyFit(false);
if (state.fitMode === "height") {
scrollToPage(state.pageIndex);
}
}
}