点击图片实现预览功能
生活随笔
收集整理的這篇文章主要介紹了
点击图片实现预览功能
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
<div><div class="pj_content">包裝好,不好吃</div><div><ul class="imglist"><li class="img_item" @click="getImg"><imgsrc="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606986047107&di=e339feeef6a726fbe1497552550ff707&imgtype=0&src=http%3A%2F%2Fimg4.imgtn.bdimg.com%2Fit%2Fu%3D3227879884%2C1891776658%26fm%3D214%26gp%3D0.jpg"alt=""></li><li class="img_item" @click="getImg"><imgsrc="http://www.meishijr.com/d/swfuppic/20150903/1441272605885.jpg"alt=""></li><li class="img_item" @click="getImg"><img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606986306968&di=01bc8bee7a530aff31191aa87e6d6a1c&imgtype=0&src=http%3A%2F%2Fwww.gzw.net%2Fuploadfile%2F2020%2F1202%2F20201202050238183.png"alt=""></li></ul></div><!--這部分是彈出遮罩層,可隨意移植--><div id="outerdiv"style="position:fixed;top:0;left:0;background:rgba(0,0,0,0.8);z-index:2;width:100%;height:100%;display:none;"><div id="innerdiv" style="position:absolute;"><img id="bigimg" src="" /></div></div></div>
<script>$(function () {$(".img_item img").click(function () {var _this = $(this);//將當(dāng)前的pimg元素作為_(kāi)this傳入函數(shù)imgShow("#outerdiv", "#innerdiv", "#bigimg", _this);});});function imgShow(outerdiv, innerdiv, bigimg, _this) {var src = _this.attr("src");//獲取當(dāng)前點(diǎn)擊的pimg元素中的src屬性$(bigimg).attr("src", src);//設(shè)置#bigimg元素的src屬性/*獲取當(dāng)前點(diǎn)擊圖片的真實(shí)大小,并顯示彈出層及大圖*/$("<img/>").attr("src", src).load(function () {var windowW = $(window).width();//獲取當(dāng)前窗口寬度var windowH = $(window).height();//獲取當(dāng)前窗口高度var realWidth = this.width;//獲取圖片真實(shí)寬度var realHeight = this.height;//獲取圖片真實(shí)高度var imgWidth, imgHeight;var scale = 0.8;//縮放尺寸,當(dāng)圖片真實(shí)寬度和高度大于窗口寬度和高度時(shí)進(jìn)行縮放if (realHeight > windowH * scale) {//判斷圖片高度imgHeight = windowH * scale;//如大于窗口高度,圖片高度進(jìn)行縮放imgWidth = imgHeight / realHeight * realWidth;//等比例縮放寬度if (imgWidth > windowW * scale) {//如寬度扔大于窗口寬度imgWidth = windowW * scale;//再對(duì)寬度進(jìn)行縮放}} else if (realWidth > windowW * scale) {//如圖片高度合適,判斷圖片寬度imgWidth = windowW * scale;//如大于窗口寬度,圖片寬度進(jìn)行縮放imgHeight = imgWidth / realWidth * realHeight;//等比例縮放高度} else {//如果圖片真實(shí)高度和寬度都符合要求,高寬不變imgWidth = realWidth;imgHeight = realHeight;}$(bigimg).css("width", imgWidth);//以最終的寬度對(duì)圖片縮放var w = (windowW - imgWidth) / 2;//計(jì)算圖片與窗口左邊距var h = (windowH - imgHeight) / 2;//計(jì)算圖片與窗口上邊距$(innerdiv).css({ "top": h, "left": w });//設(shè)置#innerdiv的top和left屬性$(outerdiv).fadeIn("fast");//淡入顯示#outerdiv及.pimg});$(outerdiv).click(function () {//再次點(diǎn)擊淡出消失彈出層$(this).fadeOut("fast");});}</script>
?
總結(jié)
以上是生活随笔為你收集整理的点击图片实现预览功能的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 设计师都在用的素材网站,真的纯免费,还能
- 下一篇: 建设规划合理、高效便捷的现代物流中心——