JS實現(xiàn)放大鏡效果
JS實現(xiàn)放大鏡效果,供大家參考,具體內(nèi)容如下
鼠標(biāo)移到圖片上就可以放大一塊區(qū)域
代碼:
<!DOCTYPE html><html lang='en'> <head> <meta charset='UTF-8'> <meta name='viewport' content='width=device-width, initial-scale=1.0'> <title>Document</title> <style> #small{ width: 700px; height: 340px; position: absolute; left: 70px; top: 100px; } #small img{ width: 100%; height: 100%; } #mark{ width: 200px; height: 200px; background-color:white; position: absolute; opacity: 0.5; filter: alpha(opacity=50); left: 0px; top: 0px; display: none; } #big{ width: 400px; height: 400px; border: 1px solid black; left: 800px; top: 100px; position: absolute; overflow: hidden; display: none; } #big img{ width: 1400px; height: 680px; position: absolute; left: 0px; top: 0px; } </style> <script> window.onload = function(){ var oSmall = document.getElementById('small'); var oBig = document.getElementById('big'); var oMark = document.getElementById('mark'); var oBigImg = oBig.getElementsByTagName('img')[0]; oSmall.onmouseover = function(){ oMark.style.display = 'block'; oBig.style.display = 'block'; } oSmall.onmouseout = function(){ oMark.style.display = 'none'; oBig.style.display = 'none'; } oSmall.onmousemove = function(ev){ var e = ev || window.event; var l = e.clientX - oSmall.offsetLeft - 100; if(l <= 0){ l = 0; } if(l >= (700-200)){ l = 500; } var t = e.clientY - oSmall.offsetTop - 100; if(t <= 0){ t = 0; } if(t >= (340-200)){ t = 140; } oMark.style.left = l + ’px’; oMark.style.top = t + ’px’; /* 右邊圖片移動方向與左邊圖片方向相反且成倍數(shù)移動 */ oBigImg.style.left = l * -2 + ’px’; oBigImg.style.top = t * -2 + ’px’; } } </script> </head> <body> <div id='small'> <img src='http://www.4tl426be.cn/bcjs/地獄之門衛(wèi)士 加里奧.jpg' alt='怎么回事'> <div id='mark'></div> </div> <div id='big'> <img src='http://www.4tl426be.cn/bcjs/地獄之門衛(wèi)士 加里奧.jpg' alt='怎么回事'> </div> </body></html>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 使用vue-cli創(chuàng)建項目并webpack打包的操作方法2. 在vue中獲取wangeditor的html和text的操作3. Python用K-means聚類算法進(jìn)行客戶分群的實現(xiàn)4. python mysql 字段與關(guān)鍵字沖突的解決方式5. Java xml數(shù)據(jù)格式返回實現(xiàn)操作6. vue style width a href動態(tài)拼接問題的解決7. 解決Android Studio Design界面不顯示layout控件的問題8. python編寫五子棋游戲9. Java源碼解析之接口List10. python讀取中文路徑時出錯(2種解決方案)
