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>