利用HTML、CSS实现的图片预览弹出层的教程

所属分类: 网页制作 / CSS 阅读数: 1442
收藏 0 赞 0 分享

  本篇效果利用HTML、CSS和Jq实现的图片点击预览功能,在预览时也可以点击切换图片。图片1为整体效果,图片2是点击图片1后出现被点击图片的预览图片的名称以及说明。

图片1

图片2

  实现的代码:

  html代码:

XML/HTML Code复制内容到剪贴板
  1. <div id="ImageMain"> <img src="1img1.jpg"/><img src="1img2.jpg"/> <img src="1img3.jpg"/> <img src="1img4.jpg"/> <img src="1img5.jpg"/> <img src="1img6.jpg"/> </div>     
  2. <div id="ImageScaBg"></div>     
  3. <div id="ImageSca">     
  4.    <div id="ImageContainer">     
  5.       <img id="imgCenter" src="1img3.jpg"/>     
  6.       <div id="imgLunbo"><img class="imgLunboItem" src="1img1.jpg"/></div>     
  7.    </div>     
  8.    <div id="ImageInfo">     
  9.      <h3 id="imgName"></h3>     
  10.      <p id="imgInfo"></p>     
  11.    </div>     
  12. </div>    

  css3代码:

CSS Code复制内容到剪贴板
  1. #ImageMain {     
  2.     width630px;     
  3.     height500px;     
  4.     margin: 0 auto;     
  5.     margin-top100px;     
  6. }     
  7. #ImageMain>img{     
  8.     width:200px;     
  9.     height:200px;     
  10.     cursor:pointer;     
  11.     float:left;     
  12.     margin-left:10px;     
  13.     margin-top:10px;     
  14. }     
  15. #ImageMain>img:hover{     
  16.     opacity:0.8;     
  17. }     
  18. #ImageScaBg{     
  19.     position:fixed;     
  20.     background-color:#000;     
  21.     top:0px;     
  22.     left:0px;     
  23.     opacity:0.6;     
  24.     width:100%;     
  25.     height:100%;     
  26.     display:none;     
  27. }     
  28. #ImageSca{     
  29.     position:absolute;     
  30.     background-color:#333;     
  31.     border:1px solid #ccc;     
  32.      -webkit-border-radius:5px;       
  33.     -moz-border-radius:5px;      
  34.     border-radius:5px;       
  35.     display:none;     
  36. }     
  37. #ImageContainer{     
  38.     float:left;     
  39.     text-align:center;     
  40. }     
  41.     
  42. #ImageInfo{     
  43.     float:left;     
  44.     width:300px;     
  45.     background-color:#fff;     
  46.      -webkit-border-radius:0 3px 3px 0;       
  47.     -moz-border-radius:0 3px 3px 0;       
  48.     border-radius:0 3px 3px 0;       
  49. }     
  50. #imgName{     
  51.     font15px "微软雅黑"ArialHelveticasans-serif;     
  52.     padding-left:10px;     
  53.     font-weight:500px;     
  54. }     
  55. #imgInfo{     
  56.     font13px "微软雅黑"ArialHelveticasans-serif;     
  57.     padding-left:10px;     
  58.     color:#808080;     
  59. }     
  60. #imgLunbo{     
  61.     height:80px;     
  62.     position:absolute;     
  63.     margin-left:50px;     
  64. }     
  65. .imgLunboItem{     
  66.     width:76px;     
  67.     height:76px;     
  68.     margin-left:10px;     
  69. }    

  JQ的代码:

复制内容到剪贴板
  1. var ImageScaHandler={     
  2.     ImageMaxWidth:800,     
  3.     ImageMaxHeight:600,     
  4.     ImagePathJson:[{imgName:"预览弹出层测试图片1",imgPath:"1img1.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"},     
  5.     {imgName:"预览弹出层测试图片2",imgPath:"1img2.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"},     
  6.     {imgName:"预览弹出层测试图片3",imgPath:"1img3.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"},     
  7.     {imgName:"预览弹出层测试图片4",imgPath:"1img4.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"},     
  8.     {imgName:"预览弹出层测试图片5",imgPath:"1img5.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"},     
  9.     {imgName:"预览弹出层测试图片6",imgPath:"1img6.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"}     
  10.     ],     
  11.     Init:function(){     
  12.         $("#ImageSca").css("width",ImageScaHandler.ImageMaxWidth 200 "px");     
  13.         $("#ImageSca").css("height",ImageScaHandler.ImageMaxHeight 10 "px");     
  14.         $("#ImageSca").css("top",($(window).height()-$("#ImageSca").height())/2 "px");     
  15.         $("#ImageSca").css("left",($(window).width()-$("#ImageSca").width())/2 "px");     
  16.         $("#ImageContainer").css("width",$("#ImageSca").width()-300 "px").css("height",$("#ImageSca").height());     
  17.         $("#imgLunbo").css("width",$("#ImageSca").width()-300-100 "px").css("top",$("#ImageSca").height()-90 "px");     
  18.         $("#ImageInfo").css("height",$("#ImageSca").height());     
  19.         $("#ImageMain>img").click(function(){     
  20.             ImageScaHandler.ChangeImage($(this));     
  21.         });     
  22.                 ImageScaHandler.GetImage();     
  23.         $("#ImageSca").click(function(event){     
  24.             event.stopPropagation();     
  25.         });     
  26.         $("#ImageScaBg").click(function(event){     
  27.             ImageScaHandler.Hide();     
  28.         });     
  29.     },     
  30.     Show:function(){     
  31.         $("#ImageSca").css("display","block");     
  32.         $("#ImageScaBg").css("display","block");     
  33.     },     
  34.     Hide:function(){     
  35.         $("#ImageSca").css("display","none");     
  36.         $("#ImageScaBg").css("display","none");     
  37.     },     
  38.     GetImage:function(){     
  39.         $("#imgLunbo").children().remove();     
  40.         for(var i=0;i<ImageScaHandler.ImagePathJson.length;i  ){     
  41.            var mImage=document.createElement("img");     
  42.            mImage.className="imgLunboItem";     
  43.            mImage.src=ImageScaHandler.ImagePathJson[i].imgPath;     
  44.            $("#imgLunbo").append(mImage);     
  45.            mImage.onclick=function(){     
  46.                $(".imgLunboItem").css("border","0px solid #000");     
  47.                ImageScaHandler.ChangeImage($(this));     
  48.            }     
  49.         }     
  50.     },     
  51.     ChangeImage:function(target){     
  52.             $("#ImageContainer>img").attr("src",$(target).attr("src"));     
  53.             $("#ImageContainer>img").css("margin-top",100 "px");     
  54.             ImageScaHandler.Show();     
  55.              $(".imgLunboItem").css("border","0px solid #000");     
  56.             for(var i=0;i<ImageScaHandler.ImagePathJson.length;i  ){     
  57.                 if(ImageScaHandler.ImagePathJson[i].imgPath==$(target).attr("src")){     
  58.                     $("#imgName").html(ImageScaHandler.ImagePathJson[i].imgName);     
  59.                     $("#imgInfo").html(ImageScaHandler.ImagePathJson[i].imgInfo);     
  60.                     $($(".imgLunboItem")[i]).css("border","2px solid #efefef");     
  61.                 }     
  62.             }     
  63.     }     
  64. }    

 以上就是利用HTML、CSS和Jq实现的图片点击预览功能,谢谢阅读,希望能帮到大家,请继续关注脚本之家,我们会努力分享更多优秀的文章。

更多精彩内容其他人还在看

Opera中国的WEB标准课程

网页制作Webjx文章简介:在这篇文章里,我要向大家介绍我和其他很多人花费数月时间开发的一个课程——Web标准课程,该课程旨在向大家提供Web设计和开发的坚实基础,无论读者是谁,此教程完全免费、可访问,并且不需要预备知识。当然,我主要还
收藏 0 赞 0 分享

CSS样式表渐进增强的基本概念

网页制作Webjx文章简介:如果你挠着头想弄清楚优雅降级和渐进增强的区别,我告诉你,这是视角问题。优雅降级和渐进增强都考虑网站在各种设备的各种浏览器上如何良好运转。两者区别的关键在于它们各自关注的焦点,以及这种关注对工作流程的影响
收藏 0 赞 0 分享

简单介绍Web Developer插件制作网页

网页制作Webjx文章简介:Firefox浏览器是一个良好支持W3C标准的开放源代码的浏览器,拥有Linux/Windows/Mac版本。因为Firefox浏览器良好支持W3C标准,所以使用Firefox来调试网页是非常好的。 Firefox浏览器是
收藏 0 赞 0 分享

CSS布局带来的巨大影响:CSS display属性值

网页制作Webjx文章简介:网页元素应用上那些与表格相关的display属性值后,能够模仿出与表格相同的特性。我将会在该文中给大家演示这种方法给CSS布局带来的巨大影响。 应原书编辑要求,先在文章顶部给出链接:《Everything You
收藏 0 赞 0 分享

用div css模拟表格对角线

这只是探讨一种CSS模拟表格对角线的用法,实际在工作中可能觉得这样做有点小题大作,这不是本主题讨论的重点。如果对此深以为然的朋友,请一笑过之 首先声明: 这只是探讨一种CSS模拟表格对角线的
收藏 0 赞 0 分享

IE Firefox在css中的差别 (部分)

1、单位问题 问题:任何距离的数值ie可以不加单位,ff必须要求写单位(0除外) 解决:写全单位如padding:0px; 2、水平居中 问题:div里的内容,ie默认为center,而ff默认left 解决:mairgin:0px auto; 3、高度问题
收藏 0 赞 0 分享

不用js可以实现信息提示效果

[code] <style> body { font:verdena; font-size:14px; color:#000 } h1{ font:verdena; font-size:22px; color:#000 } h2{ font:verdena;
收藏 0 赞 0 分享

CSS解决未知高度的垂直水平居中自适应问题

今天有人问起,晚上试着写出来,供参考; 以下代码兼容主流浏览器IE6、IE7、Firefox、Opera。 从最简单的开始………… 一、如何让一个DIV水平居中? 这个简单不作过多说明! [code] <st
收藏 0 赞 0 分享

CSS cursor 属性 -- 鼠标指针样式效果

取值: [ [<uri> ,]* [ auto | crosshair | default | pointer | move | e-resize | ne-resize | nw-resize | n-resize | se-resize | sw-resize |
收藏 0 赞 0 分享

css 简单区别ie6,ie7,firefox的写法

同一样式里可以这样 [code] margin:17px; FF +margin:17px; IE6 IE7 _margin:17px; IE6 [/code] 按这个顺序,刚好区分开三个浏览器
收藏 0 赞 0 分享
查看更多