js實(shí)現(xiàn)圖片放大展示效果
圖片放大展示效果的實(shí)現(xiàn)代碼,可動(dòng)態(tài)生成圖片,每次點(diǎn)擊看原圖的時(shí)候?yàn)楫?dāng)前id里面的圖片
HTML
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script src="node_modules/jquery/jquery.js"></script> <style> *{ margin: 0; padding: 0; } #picOne img{ width: 200px; height: 200px; } .mask-img { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 10; background: rgba(0,0,0,.2); } .picture{ display: none; position: fixed; top: 50%; left:50%; transform: translate(-50%,-50%); width: 960px; height: 700px; line-height: 700px; text-align:center; background: #666; z-index: 20; } .picture .phone{ vertical-align: middle; max-width: 868px; max-height: 670px; } .picture .left{ position: absolute; left: 10px; top: 320px; width: 25px; height: 40px; line-height: 40px; } .picture .right{ position: absolute; right: 10px; top: 320px; width: 25px; height: 40px; line-height: 40px; } </style> </head> <body> <div class="seaImg"> <!-- seaImg可動(dòng)態(tài)生成多個(gè) --> <div id="picOne"> <img src="img/img2.jpg"> <img src="img/img3.jpg"> <img src="img/img1.jpg"> </div> </div> <!-- 遮罩層 --> <div class="mask-img"></div> <div class="picture"> <img class="phone" src="" alt="" /> <div class="left"><img src="img/left.png" alt="" /></div> <div class="right"><img src="img/right.png" alt="" /></div> </div> </body> <script> function seaImg(){ $(".mask-img").on("click",function(e){ $(".mask-img").css("display","none"); $(".picture").css("display","none"); }) var imgs = $('.seaImg img') var images; imgs.on('click',function(e){ var father = (e.currentTarget).parentNode; //當(dāng)前點(diǎn)擊圖片的父元素 var att = father.attributes.id.nodeValue; //父元素自己的屬性id var image = '#' + att + ' img' images = $(image) //jquer獲取id下的所有img $(".mask-img").css("display","block"); $(".picture").css("display","block"); $(".phone").attr("src",e.currentTarget.src); if(e.currentTarget == images[0]){ $(".left").css("display","none"); }else{ $(".left").css("display","block"); } if(e.currentTarget == images[images.length-1]){ $(".right").css("display","none"); }else{ $(".right").css("display","block"); } }) //左點(diǎn)擊事件,當(dāng)圖片為第一張的時(shí)候左邊的箭頭點(diǎn)擊圖片隱藏 $(".left").on("click",function(){ var imgSrc = $(".phone").attr("src"); $(".right").css("display","block"); for(var i = 0 ; i<images.length; i++){ if(imgSrc == images[i].src){ if(imgSrc == images[1].src){ $(".left").css("display","none"); } var j = i; $(".phone").attr("src",images[j-1].src); } } }) //右點(diǎn)擊事件, 當(dāng)圖片為最后一張的時(shí)候右邊箭頭點(diǎn)擊圖片隱藏 $(".right").on("click",function(){ var imgSrc = $(".phone").attr("src"); $(".left").css("display","block"); for(var i = 0 ; i<images.length; i++){ if(imgSrc == images[i].src){ if(imgSrc == imgs[images.length-2].src){ $(".right").css("display","none"); } var j = i; $(".phone").attr("src",images[j+1].src); } } }) } seaImg() </script> </html>
< 向左點(diǎn)擊事件
> 向右點(diǎn)擊事件
第一張效果圖
中間圖片效果圖
最后一張效果圖
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JS簡(jiǎn)單的圖片放大縮小的兩種方法
- js放大鏡放大圖片效果
- js實(shí)現(xiàn)單擊圖片放大圖片的方法
- js實(shí)現(xiàn)點(diǎn)擊圖片在屏幕中間彈出放大效果
- JS實(shí)現(xiàn)鼠標(biāo)移動(dòng)到縮略圖顯示大圖的圖片放大效果
- 鼠標(biāo)滑上去后圖片放大浮出效果的js代碼
- JavaScript圖片放大鏡效果代碼[代碼比較簡(jiǎn)單]
- 手機(jī)端 HTML5使用photoswipe.js仿微信朋友圈圖片放大效果
- JS網(wǎng)頁(yè)圖片查看器(兼容IE、FF)可控制圖片放大縮小移動(dòng)
- JavaScript實(shí)現(xiàn)淘寶網(wǎng)圖片的局部放大功能
相關(guān)文章
對(duì)frameset、frame、iframe的js操作示例代碼
父框架到子框架的引用、子框架到父框架的引用、兄弟框架間的引用、不同層次框架間的互相引用具體實(shí)現(xiàn)如下,有此需求的朋友可以參考下2013-08-08微信小程序用戶(hù)授權(quán)彈窗 拒絕時(shí)引導(dǎo)用戶(hù)重新授權(quán)實(shí)現(xiàn)
我們?cè)陂_(kāi)發(fā)小程序時(shí),如果想獲取用戶(hù)信息,就需要獲取用的授權(quán),如果用戶(hù)誤點(diǎn)了拒絕授權(quán),我們?cè)趺礃尤フ_的引導(dǎo)用戶(hù)重新授權(quán)呢。今天就來(lái)給大家講講如果正確的引導(dǎo)用戶(hù)授權(quán),需要的朋友可以參考下2019-07-07js實(shí)現(xiàn)正則匹配中文標(biāo)點(diǎn)符號(hào)的方法
這篇文章主要介紹了js實(shí)現(xiàn)正則匹配中文標(biāo)點(diǎn)符號(hào)的方法,涉及JavaScript正則匹配與判定的簡(jiǎn)單使用技巧,需要的朋友可以參考下2015-12-12微信小程序購(gòu)物商城系統(tǒng)開(kāi)發(fā)系列-工具篇的介紹
這篇文章主要介紹了微信小程序購(gòu)物商城系統(tǒng)開(kāi)發(fā)系列-工具篇的介紹,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-11-11jQuery和JavaScript節(jié)點(diǎn)插入元素的方法對(duì)比
本文主要介紹jQuery與JavaScript節(jié)點(diǎn)的插入方法,以及他們的具體代碼實(shí)現(xiàn)方法,大家可以對(duì)比下他們之間的不同,希望對(duì)大家編寫(xiě)代碼有所幫助2016-11-11javascript函數(shù)的call、apply和bind的原理及作用詳解
javascript函數(shù)的call、apply和bind?本質(zhì)是用來(lái)實(shí)現(xiàn)繼承的,專(zhuān)業(yè)點(diǎn)說(shuō)法就是改變函數(shù)體內(nèi)部this的指向,當(dāng)一個(gè)對(duì)象沒(méi)有某個(gè)功能時(shí),就可以用這3個(gè)來(lái)從有相關(guān)功能的對(duì)象里借用過(guò)來(lái),文中通過(guò)代碼示例介紹的非常詳細(xì),需要的朋友可以參考下2023-05-05只需一行代碼,輕松實(shí)現(xiàn)一個(gè)在線編輯器
在瀏覽器地址欄中輸入一行代碼:data:text/html, <html contenteditable> ,回車(chē)即可把瀏覽器變臨時(shí)編輯器(需要瀏覽器支持 HTML5 屬性 contenteditable)2013-11-11javascript實(shí)現(xiàn)貪吃蛇小練習(xí)
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)貪吃蛇的小練習(xí),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-07-07javascript中解析四則運(yùn)算表達(dá)式的算法和示例
這篇文章主要介紹了javascript中解析四則運(yùn)算表達(dá)式的算法和示例,本文介紹了中綴表示法、逆波蘭表示法這2種算法,并分別給出了代碼實(shí)例,需要的朋友可以參考下2014-08-08