javascript实现查看html网页放大图片功能
来源:互联网 发布:hiteach软件在哪买 编辑:程序博客网 时间:2024/05/15 23:53
本程序实现了放大查看网页中的图片的功能,效果如下:
作用:可用于模仿淘宝,查看物品细节的功能,也可用于嵌入网页的视频的放大查看。
测试方法:直接拷贝本程序到新建的html文件,建好后,在同一文件夹下,新建文件夹命名为“image”,再放入一张图片,然后修改代码中两处图片名,即可使用。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title><style type="text/css">/*左边小图的样式*/.small_pic { top: 50px; left:100px; width: 420px; height: 400px; background: #eee; position: absolute; }/*鼠标跟随浮动方块的样式*/.float_layer { width: 50px; height: 50px; border: 1px solid #000; background: #fff; filter: alpha(opacity: 30); opacity: 0.3; position: absolute; margin-top: 50; margin-left: 50; display:none; }/*标记要放大的区域的位置*/.mark { width:100%; height:100%; position:absolute; z-index:2; left:1px; top:1px; background:red; filter:alpha(opacity:0); opacity:0; }/*右边被放大的图片的区域,其中overflow为重点*/.big_pic { position: absolute; margin-top: 50px; margin-left: 600px; width:450px; height:400px; overflow:hidden; border:2px solid #CCC; } /*被放大的内容*/.big_pic img { position:absolute; top: -30px; left: -80px; }.pforimg{ width:100%; height:100%;}</style><script type="text/javascript"> /*获得父元素下相应名称的子元素*/function getByClass(oParent, sClass){ var aEle=oParent.getElementsByTagName('*'); var aTmp=[]; var i=0; for(i=0;i<aEle.length;i++) { if(aEle[i].className==sClass) { aTmp.push(aEle[i]); } } return aTmp;}window.onload=function (){ /*按类型获取每个要控制的对象*/ var oDiv=document.getElementById('div1'); var oMark=getByClass(oDiv, 'mark')[0]; var oFloat=getByClass(oDiv, 'float_layer')[0]; var oBig=getByClass(oDiv, 'big_pic')[0]; var oSmall=getByClass(oDiv, 'small_pic')[0]; var oImg=oBig.getElementsByTagName('img')[0];/*当鼠标移动到小图上面时,浮动块显示,大图显示*/ oMark.onmouseover=function () { oFloat.style.display='block'; oBig.style.display='block'; };/*当鼠标移出小图,浮动块消失,大图消失*/ oMark.onmouseout=function () { oFloat.style.display='none'; oBig.style.display='none'; /*删除这句大图可一直显示*/ }; /*鼠标在小图上移动的函数,都是计算块的边界的运算*/ oMark.onmousemove=function (ev) { /*鼠标的位置(event.clientX、event.clientY)*/ var oEvent=ev||event; /*offsetHeight获取元素的高度,其余offset**开头的同理*/ var l=oEvent.clientX-oDiv.offsetLeft-oSmall.offsetLeft-oFloat.offsetWidth/2; var t=oEvent.clientY-oDiv.offsetTop-oSmall.offsetTop-oFloat.offsetHeight/2; if(l<0) { l=0; } else if(l>oMark.offsetWidth-oFloat.offsetWidth) { l=oMark.offsetWidth-oFloat.offsetWidth; } if(t<0) { t=0; } else if(t>oMark.offsetHeight-oFloat.offsetHeight) { t=oMark.offsetHeight-oFloat.offsetHeight; } /*获得的l和t用于更新浮动块当前位置*/ oFloat.style.left=l+'px'; oFloat.style.top=t+'px'; var percentX=l/(oMark.offsetWidth-oFloat.offsetWidth); var percentY=t/(oMark.offsetHeight-oFloat.offsetHeight); oImg.style.left=-percentX*(oImg.offsetWidth-oBig.offsetWidth)+'px'; oImg.style.top=-percentY*(oImg.offsetHeight-oBig.offsetHeight)+'px'; };};</script></head><body> <div id="div1" > <div class="small_pic"> <span class="mark"></span> <span class="float_layer"></span> <!--在img的src里改为你自己的图片的路径--> <img class="pforimg" src="image\20121129211433_BMfnw.jpeg"/> </div> <div class="big_pic"> <!--在这里的width,height可以调整放大倍数--> <img src="image\20121129211433_BMfnw.jpeg" width="2000" height="2000"/> </div></div> </body></html>
0 0
- javascript实现查看html网页放大图片功能
- 图片放大时实现鼠标拖动查看完整图片功能
- 仅用CSS+HTML实现图片放大功能
- Javascript单击图片放大功能
- JavaScript(jqzoom)图片放大功能
- jQuery插件Magnify放大镜实现javascript图片放大功能
- ActionScript 实现放大图片功能
- jquery实现图片放大功能
- Js 实现图片放大功能
- jquery实现图片放大功能
- 实现局部放大图片功能
- javascript 实现图片放大缩小
- Javascript实现图片的移动,图片的放大,图片缩小功能
- 实现仿百度图片查看功能(点击缩略图放大效果)
- 简单使用JQZoom实现放大查看图片
- js实现图片局部放大功能
- 点击图片放大功能,swift实现
- zoom插件实现图片放大缩小功能
- 第三周项目3:输出星号图(2)
- Apriori2(关联规则)
- java中hashCode方法与equals方法的用法总结_java_脚本之家
- 前端开发总结
- VMware虚拟机下ubuntu12配置NFS服务
- javascript实现查看html网页放大图片功能
- 概念题
- Android开发仿位置共享功能基于高德地图
- poj 1330 Nearest Common Ancestors(离线LCA)
- 第一个只出现一次的字符
- xStream完美转换XML、JSON
- 多点下载、断点续传、AFNetworking的简单使用
- HDU1234开门人和关门人
- Java集合框架