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

Javascript
js 方法实现返回多个数据的代码
Ext 表单布局实例代码
javascript document.referrer 用法
JavaScript 字符编码规则
JS 动态加载脚本的4种方法
jQuery textarea的长度进行验证
jQuery select的操作实现代码
jQuery 1.2.x 升級 1.3.x 注意事项
关于viewport,Ext.panel和Ext.form.panel的关系
日期 时间js控件
JavaScript的parseInt 进制问题
javascript 有用的脚本函数
javascript 两个字符串比较函数
javascript 代码运行器
js arguments.callee的应用代码
JavaScript Table排序 2.0 (更新)
给Function做的OOP扩展
<script defer> defer 是什么意思
FF和IE之间7个JavaScript的差异
javascript获取当前ip的代码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 556 ::
收藏到网摘: 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>