当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 用层实现为网页中的图添加水印的效果

Javascript
JavaScript中全局变量、函数内变量以及常量表达式的效率测试
写出更好的JavaScript之undefined篇(上)
Javascript 刷新全集常用代码
传智播客学习之java 反射
javascript DOM编程实例(智播客学习)
javascript 在网页中的运用(asp.net)
通过身份证号得到出生日期和性别的js代码
写出更好的JavaScript程序之undefined篇(中)
js获取图片长和宽度的代码
js cookies实现简单统计访问次数
根据鼠标的位置动态的控制层的位置
dropdownlist之间的互相联动实现(显示与隐藏)
javascript select控件间内容互相移动
asp.net下利用js实现返回上一页的实现方法小集
JavaScript 利用StringBuffer类提升+=拼接字符串效率
JS 实现双色表格实现代码
利用JavaScript更改input中radio和checkbox样式
jquery.ui.draggable中文文档
js loading加载效果实现代码
JS 倒计时实现代码(时、分,秒)

Javascript 中的 用层实现为网页中的图添加水印的效果


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 486 ::
收藏到网摘: n/a

首先获得网页元素的绝对位置后在相应的位置创建一个遮挡层,可实现一个水印样式。该例可用于为图片加版权,或隐藏图片的下载地址等。缺点是改变浏览器大小时有页面有闪烁。


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
<script>
 //取得元素(图像)的绝对位置
 function getDim(el)
 {
  for (var lx=0,ly=0; el!=null; lx+=el.offsetLeft,ly+=el.offsetTop,el=el.offsetParent);
  return {x:lx,y:ly}
 }
 //创建遮挡层
 function createLayer(el)
 {
  myImgDim = getDim(el);
 
  document.writeln("<div id='Layer1' style='position:absolute; z-index:1; left: "+myImgDim.x+"px; top: "+myImgDim.y+"px;'>");
  document.writeln("<img src=logo.gif width=38 height=17>");
  document.writeln("</div>");
 }
 //浏览器窗口大小改变时刷新页面
 window.onresize=function()
 {
  location.reload();
 }
</script>
<link href="j.css" rel="stylesheet" type="text/css">
</head>

<body>
<br>
<br>
<table width="407" height="268" align="center">
  <tr>
    <td align="center"><span id=MySpan><img src="image/logo1.gif" width="150" height="78" id=MyImage></span><span id=MySpan><img src="image/logo1.gif" width="150" height="78" id=MyImage2></span></td>
  </tr></table>

 


<span id=MySpan><img src="image/logo1.gif" width="150" height="78" id=MyImage3></span><br>
<span id=MySpan><img src="image/logo1.gif" width="150" height="78" id=MyImage4></span>
<script>
 createLayer(document.images.MyImage);
 createLayer(document.images.MyImage2);
 createLayer(document.images.MyImage3);
 createLayer(document.images.MyImage4);
</script>

</body>
</html>