爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
JS特效
[js放大镜]使用js放大图片的特效
[js放大镜]使用js放大图片的特效
日期:2014-05-18 浏览次数:20170 次
以下是HTML网页特效代码,点击运行按钮可查看效果:
以下是程序代码
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Javascript Images zoom-out view sample. Brought to you by 斩梦人.天天 QQ:22062019</title> <script language="JavaScript"> <!-- var dshowW=450; //默认预览图宽度(可由小图的showW,showH动态指定) var dshowH=300; //默认预览图高度 var bborder=1; //大图边框 var sborder=1; //小图边框 var vborder=1; //小预览图边框 var bigW,bigH,smallW,smallH,showW,showH,viewW,viewH;//大图,小图,预览窗,小预览窗 var nview,nflag,picstatus,tempo,abox,zoomX,zoomY; //初始化 window.onload=function init(){ isIE=window.event?1:0; picshow.style.borderWidth=bborder; picshow.style.width=dshowW; picshow.style.height=dshowH; bpic.style.display=""; abox=document.body.getElementsByTagName("div"); //初始化所有小图 for (n=0;n<abox.length;n++) if (abox[n].className=="picbox"){ var o=abox[n]; var view=getview(o); var img=getimg(o); view.style.borderWidth=vborder; o.style.borderWidth=sborder; o.style.width=img.width+sborder*2*isIE; o.style.height=img.height+sborder*2*isIE; o.setAttribute("pid",n); //小图标记,主键唯一 if (o.getAttribute("show")=="show") loadpic(o); o.onmouseout=function (){setTimeout(nview.style.visibility='hidden');} } } //载入图片 function loadpic(o){ var view=getview(o); var img=getimg(o); bpic.style.display="none"; nview=view; //标记活动小预览窗 nflag=o.getAttribute("pid"); //当前图片标记,用来判断切换图片 //改变预览窗大小 if (img.getAttribute("showW")!=null) showW=parseInt(img.getAttribute("showW")); else showW=dshowW; if (img.getAttribute("showH")!=null) showH=parseInt(img.getAttribute("showH")); else showH=dshowH; picshow.style.width=showW+isIE*bborder*2; picshow.style.height=showH+isIE*bborder*2; loading.style.marginTop=(showH-loading.offsetHeight)/2; if (img.getAttribute("dLeft")) bpic.style.marginLeft=-parseInt(img.getAttribute("dLeft")); if (img.getAttribute("dTop")) bpic.style.marginTop=-parseInt(img.getAttribute("dTop")); picstatus="loading"; tempo=o; bpic.src=img.lowsrc; } //图片载入完成 function loaddone(o){ bpic.style.display="block"; var view=getview(o); var img=getimg(o); smallW=img.width; //改变小图,小预览窗大小 smallH=img.height; bigW=bpic.width; bigH=bpic.height; if (showW>bigW){//如果预览图比大图大,则等于大图 showW=bigW; picshow.style.width=showW+isIE*bborder*2; } if (showH>bigH){ showH=bigH; picshow.style.height=showH+isIE*bborder*2; } zoomX=bigW/smallW; zoomY=bigH/smallH; viewW=showW*smallW/bigW; viewH=showH*smallH/bigH; nview.style.width=viewW-vborder*2*!isIE; nview.style.height=viewH-vborder*2*!isIE; nview.style.display="block"; img.style.top=-nview.offsetHeight; if (!nview.style.left) nview.style.left=0; if (!nview.style.top) nview.style.top=0; picstatus="done" } //移动事件 function move(e,o,flag){ //flag,对象来源标记,FF下view的定位需要 o=isIE?o.parentElement:o.parentNode; if (o.getAttribute("pid")!=nflag){ //判断是否切换了图片 nview.style.visibility="hidden"; loadpic(o); //载入新图片 } if (picstatus="done"){ //如果大图载入完毕 if (nview.style.visibility="hidden") nview.style.visibility="visible"; var e=isIE?window.event:e; if (isIE==0){ //分别获取FF或IE的view位置 if (flag==1){ //由于o的来源不同,使用不同的算法定位 vX=e.layerX+parseInt(nview.style.left)-nview.offsetWidth/2-vborder; vY=e.layerY+parseInt(nview.style.top)-nview.offsetHeight/2-vborder; }else{ vX=e.layerX-nview.offsetWidth/2-vborder; vY=e.layerY-nview.offsetHeight/2-vborder; } } else{ vX=e.offsetX-nview.offsetWidth/2; vY=e.offsetY-nview.offsetHeight/2; } if (vX < 0) vX = 0; //边界判断,不能超出缩略图的范围 if (vY < 0) vY = 0; if (vX > smallW-viewW) {vX=smallW-viewW;mX=bigW-showW
上一篇:狡猾的按钮特效
下一篇:简单的js图片拉伸效果特效
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
国美电商开打价钱战 牟贵先言行矛盾受质疑
传搜狗估值12亿美元 与360谈判进入白热化
微软大幅调整Bing在华策略:从高大上到接地气
苹果联合创始人炮轰鲍尔默“一直都在吃老本”
阿里巴巴上市后雅虎将面临更大的业绩压力
云智慧:用大数据实现企业应用性能管理
陈天桥之鉴:产品创新被扼杀那些事
京东进驻微信一级入口或影响自身战略布局
iPhone 6将于10月17日内地上市:售5288元起
推荐阅读
更多>
网友爆料称微软雇水军宣传主机Xbox One
聚美向左,唯品向右,怎能耐得住高跟和红唇的诱惑!
看,网络文学今日之繁盛;忆,纯真去哪了?
唯品会荣登“最贵中概股”的欢喜与哀愁
微软与摩托罗拉授权协议涵盖Android和Chrome设备
谷歌新技术进入iOS平台:将叫板苹果Siri
Docker Desktop 4.11 发布:支持虚拟桌面、Mac 权限更改和新扩展
同程旅游融资后变土豪 如何烧钱占领市场?
玩游戏式的趣味戒烟App:Kwit
中兴通讯不打机海战术 将向中高端手机转型
同样的背景,罗永浩和雷军到底有什么不同?
微软提示XP只剩365天寿命:用户被绑架?
三大运营商获通知大减营销费 传3年减400多亿
联发科享用价钱战 专利难以摆脱高通
携程收买酷讯成定局:转型互联网+投资
NoomWeight减肥
开个房刷个卡全世界都知道个人隐私成公开秘密
网易微博将正式关闭 用户迁至轻博客LOFTER
工商下月将整治手机市场
罗永浩工匠形象坍塌,锤子产能再跳水逃离用户超两成