vant代码实现前台展示数据库里的图片点击放大查看
您可以使用以下代码实现前台展示数据库中的图片,并点击放大查看:
<!DOCTYPE html>
<html>
<head>
<style>
#myModal {
display: none;
position: fixed;
z-index: 1;
padding-top: 100px;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgb(0,0,0);
background-color: rgba(0,0,0,0.9);
}
.modal-content {
margin: auto;
display: block;
width: 80%;
max-width: 700px;
}
.modal-content img {
width: 100%;
height: auto;
}
.close {
position: absolute;
top: 15px;
right: 35px;
color: #f1f1f1;
font-size: 40px;
font-weight: bold;
transition: 0.3s;
}
.close:hover,
.close:focus {
color: #bbb;
text-decoration: none;
cursor: pointer;
}
</style>
</head>
<body>
<div id="myModal" class="modal">
<span class="close">×</span>
<img class="modal-content" id="img">
</div>
<div id="gallery">
<!-- 使用循环展示数据库中的图片 -->
<% for (var i = 0; i < images.length; i++) { %>
<img src="<%= images[i].url %>" onclick="openModal('<%= images[i].url %>')">
<% } %>
</div>
<script>
// 点击图片打开模态框
function openModal(url) {
var modal = document.getElementById("myModal");
var img = document.getElementById("img");
img.src = url;
modal.style.display = "block";
}
// 点击关闭按钮或模态框外部关闭模态框
var modal = document.getElementById("myModal");
var span = document.getElementsByClassName("close")[0];
span.onclick = function() {
modal.style.display = "none";
}
window.onclick = function(event) {
if (event.target == modal) {
modal.style.display = "none";
}
}
</script>
</body>
</html>
在上述代码中,使用一个循环来展示数据库中的图片,每张图片都有一个点击事件onclick="openModal('<%= images[i].url %>')"``,其中images[i].url`是数据库中存储图片路径的字段。
openModal函数用于打开模态框,并将被点击的图片的URL赋值给模态框中的img元素的src属性。modal.style.display = "block"用于显示模态框。
模态框中包含了一个关闭按钮和一个图片展示区域。点击关闭按钮或模态框外部都会关闭模态框。
您需要根据您的具体情况修改images数组为从数据库中获取的图片数据,并将images[i].url替换为您数据库中存储图片路径的字段
原文地址: https://www.cveoy.top/t/topic/hBk2 著作权归作者所有。请勿转载和采集!