new: Add article image preview function

This commit is contained in:
yv1ing
2024-12-20 12:15:44 +08:00
parent 8bc4aac9ff
commit af7cc94165
3 changed files with 44 additions and 1 deletions

View File

@@ -139,4 +139,22 @@ tr, th, td {
#toc-box .li-6 {
font-size: 11px;
padding-left: 50px;
}
.image-preview-wrap {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: none;
background: rgba(0, 0, 0, 0.7);
justify-content: center;
align-items: center;
cursor: pointer;
}
.image-preview-img {
max-width: 90%;
max-height: 90%;
}

View File

@@ -52,4 +52,24 @@ function backToTop() {
top: 0,
behavior: 'smooth'
})
}
}
// image preview
const contentImages = document.querySelectorAll("#post-content img");
contentImages.forEach((img) => {
img.style.cursor = "pointer";
img.addEventListener("click", () => {
openPreview(img);
})
});
function openPreview(img) {
const src = img.getAttribute("src");
document.getElementById("image-preview-img").setAttribute("src", src);
document.getElementById("image-preview-wrap").style.display = "flex";
}
function closePreview() {
document.getElementById("image-preview-wrap").style.display = "none";
}

View File

@@ -100,6 +100,11 @@
{{ .post.content }}
</div>
</div>
<!-- image preview -->
<div class="image-preview-wrap" id="image-preview-wrap" onclick="closePreview()">
<img class="image-preview-img" id="image-preview-img" src="">
</div>
</div>
{{ end }}