js 点击图片实现查看大图
截图:点击放大,并显示ico放大镜
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>点击图片放大缩小(遮罩)</title>
<style type="text/css">
<style type="text/css">
.min {
max-height:25px;
}
.showImg{cursor: zoom-in;}
#bigImg{cursor: zoom-out;}
</style>
</style>
</head>
<body>
<table>
<td>
<img id="showImg" class="showImg min" src="phpcms问题统计/QQ截图20210609140112.png" width="200"/>
</td>
<td>
<img id="showImg" class="showImg min" src="phpcms问题统计/QQ截图20210609140342.png" width="200"/>
</td>
<td>
<img id="showImg" class="showImg min" src="phpcms问题统计/QQ截图20210609142248.png" width="200"/>
</td>
<td>
<img id="showImg" class="showImg min" src="phpcms问题统计/QQ截图20210609160600.png" width="200"/>
</td>
<td>
<img id="showImg" class="showImg min" src="phpcms问题统计/QQ截图20210609160901.png" width="200"/>
</td>
</table>
<div id="back-curtain" style="position:fixed;top:0;left:0;background:rgba(0,0,0,0.5);z-index:998;width:100%;display:none;">
<div id="imgDiv" style="position:absolute;">
<img id="bigImg" src="" />
</div>
</div>
<script src="js/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$('.showImg').on('click', function(){
imgShow("#imgDiv", "#bigImg", $(this), "#back-curtain");
});
function imgShow(imgDiv, bigImg, _this, curtain) {
var src = _this.attr("src");
$(bigImg).attr("src", src);
$("<img/>").attr("src", src).load(function(){
var windowWidth = $(window).width();
var windowHeight = $(window).height();
var realWidth = this.width;
var realHeight = this.height;
var imgWidth, imgHeight;
var scale = 0.8;
if (realHeight > windowHeight * scale) {
imgHeight = windowHeight * scale;
imgWidth = imgHeight / realHeight * realWidth;
if (imgWidth > windowWidth * scale) {
imgWidth = windowWidth * scale;
}
} else if (realWidth > windowWidth * scale) {
imgWidth = windowWidth * scale;
imgHeight = imgWidth / realWidth * realHeight;
} else {
imgWidth = realWidth;
imgHeight = realHeight;
}
$(bigImg).css({'width':imgWidth});
var left = (windowWidth - imgWidth) / 2;
var top = (windowHeight - imgHeight) / 2;
$(imgDiv).css({'top':top, 'left':left});
$(curtain).fadeIn("fast");
$(curtain).css({
'position':'fixed',
'overflow-y':'auto',
'width':'100%',
'height':'100%',
'z-index':'998'
}).show();
});
$(curtain).on('click', function(){
$(this).fadeOut("fast");
});
}
</script>
</body>
</html>