点击小图片遮罩显示大图片

<!DOCTYPE html>
<style>
#mask {
  position
:fixed;width:100%;
  top
:0px;left:0px;
  _position
:absolute;
  _top
:expression(documentElement.scrollTop);
  background
:rgba(0,0,0,0.5);
  background
:transparent\9;
  filter
:progid:DXImageTransform.Microsoft.Gradient(
    startColorStr=#80000000,endColorStr=#80000000
  );
  display
:none;
}
#mask_td {text-align:center;}
</style>
<img
  src="http://web-tinker.com/images/TheMagicConch.jpg"
  width
="100" id="img" 
/>
<table id="mask"><tr><td id="mask_td"></td></tr></table>
<script>
//判断浏览器
var isIE=navigator.userAgent.match(/MSIE (\d)/i);
isIE=isIE?isIE[1]:isIE;
//声明变量
var img,mask;
//获取元素
img=document.getElementById("img");
mask=document.getElementById("mask");
mask.td=document.getElementById("mask_td");
//计算mask的大小
mask.setSize=function(){
  //获取文档可见区域宽度并设置到mask上
  var de=document.documentElement;
  mask.style.width=de.clientWidth+"px"
  mask.style.height=de.clientHeight+"px";
};
//添加show方法
mask.show=function(){
  //隐藏页面的滚动条
  document[
    isIE<9?"documentElement":"body"
  ].style.overflow="hidden";
  //计算mask的大小
  mask.setSize();
  //显示
  mask.style.display=isIE==6?"block":"table";
};
//添加hide方法
mask.hide=function(){
  //显示页面滚动条
  document[
    isIE<9?"documentElement":"body"
  ].style.overflow="";
  //清空里面的内容
  mask.td.innerHTML="";
  //隐藏
  mask.style.display="none";
};
//添加append方法
mask.append=function(e){
  //在mask的TD里面添加内容哦你
  mask.td.appendChild(e);
};
//点击mask关闭
mask.οnclick=function(e){
  //判断事件来源,如果是空白区域被点击了就关闭mask
  e=e||event;
  (e.target||e.srcElement)==mask.td&&mask.hide();
};
//窗体大小改变时也改变mask的大小
window.οnresize=function(){
  mask.setSize();
};
//点击图片的事件
img.οnclick=function(){
  //创建一个图片对象
  var o=new Image;
  //设置图片的地址
  o.src=img.src;
  //在mask内添加内容
  mask.append(o);
  //显示mask
  mask.show();
};
</script>

 

 

原文链接:http://www.web-tinker.com/article/20048.html

转载于:https://www.cnblogs.com/sunzhenyong/p/4091300.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值