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

Javascript
用js实现终止浏览器对页面HTML的继续解析即停止解析 兼容firefox
Auntion-TableSort国人写的一个javascript表格排序的东西
javascript实现二分查找法实现代码
利用ASP发送和接收XML数据的处理方法与代码
兼容ie和firefox的鼠标经过(onmouseover和onmouseout)实现--简短版
javascript之文本框输入四个数字自动加空格的脚本
比较简单实用的使用正则三种版本的js去空格处理方法
比较简洁的JavaScript 实时显示时间的脚本 修正版
JavaScript检查表单是否为空的函数
window.open被浏览器拦截后的自定义提示效果代码
javascript跟随鼠标的文字带滚动效果
让插入到 innerHTML 中的 script 跑起来的代码
Flash+XML滚动新闻代码 无图片 附源码下载
javascript(js) join函数使用方法介绍
表格头固定而列可滚动的效果
document.designMode的功能与使用方法介绍
精解window.setTimeout()&window.setInterval()使用方式与参数传递问题!
用javascript实现的电信铁通(网通)自动跳转源代码
用js查找法实现当前栏目的高亮显示的代码
javascript之鼠标拖动位置互换效果代码

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


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