diff --git a/supply.html b/supply.html index 4d45683..d945d9c 100644 --- a/supply.html +++ b/supply.html @@ -810,6 +810,52 @@ background-color: rgba(255, 255, 255, 0.3); } + /* 图片导航按钮 */ + .image-viewer-nav { + position: absolute; + top: 50%; + transform: translateY(-50%); + width: 50px; + height: 50px; + background-color: rgba(0, 0, 0, 0.6); + color: white; + border: none; + border-radius: 50%; + font-size: 30px; + cursor: pointer; + display: flex; + align-items: center; + justify-content: center; + transition: background-color 0.3s; + z-index: 10; + } + + .image-viewer-nav:hover { + background-color: rgba(0, 0, 0, 0.8); + } + + .prev-btn { + left: -25px; + } + + .next-btn { + right: -25px; + } + + /* 图片计数器 */ + .image-viewer-counter { + position: absolute; + bottom: -40px; + left: 50%; + transform: translateX(-50%); + background-color: rgba(0, 0, 0, 0.6); + color: white; + padding: 8px 16px; + border-radius: 20px; + font-size: 14px; + font-weight: 500; + } + /* 选择弹窗 */ .select-modal { position: fixed; @@ -1112,8 +1158,16 @@
+ + + + + + + +
@@ -3218,7 +3272,7 @@
- ${supply.productName} + ${supply.productName}
@@ -3853,13 +3907,27 @@ let initialDistance = null; let initialScale = 1; - // 预览图片 - function previewImage(imageUrl) { + // 预览图片 - 支持多张图片切换 + let currentPreviewImages = []; + let currentPreviewIndex = 0; + + function previewImage(imageUrl, images = []) { if (!imageUrl) return; + // 如果传入了图片数组,使用它;否则使用单张图片 + if (images.length > 0) { + currentPreviewImages = images; + currentPreviewIndex = currentPreviewImages.indexOf(imageUrl); + } else { + currentPreviewImages = [imageUrl]; + currentPreviewIndex = 0; + } + const previewModal = document.getElementById('imagePreview'); const previewImage = document.getElementById('previewImage'); - previewImage.src = imageUrl; + + // 更新图片显示 + updatePreviewImage(); // 重置缩放和拖动状态 resetImageTransform(); @@ -3870,6 +3938,37 @@ setupImageViewerEvents(); } + // 更新预览图片 + function updatePreviewImage() { + const previewImage = document.getElementById('previewImage'); + const previewCounter = document.getElementById('previewCounter'); + + previewImage.src = currentPreviewImages[currentPreviewIndex]; + + // 更新图片计数器 + if (previewCounter) { + previewCounter.textContent = `${currentPreviewIndex + 1}/${currentPreviewImages.length}`; + } + } + + // 切换到上一张图片 + function prevPreviewImage() { + if (currentPreviewImages.length <= 1) return; + + currentPreviewIndex = (currentPreviewIndex - 1 + currentPreviewImages.length) % currentPreviewImages.length; + updatePreviewImage(); + resetImageTransform(); + } + + // 切换到下一张图片 + function nextPreviewImage() { + if (currentPreviewImages.length <= 1) return; + + currentPreviewIndex = (currentPreviewIndex + 1) % currentPreviewImages.length; + updatePreviewImage(); + resetImageTransform(); + } + // 关闭图片预览 function closeImagePreview() { const previewModal = document.getElementById('imagePreview');