当前位置:   article > 正文

tp-watermark.js网页添加水印插件_js水印插件

js水印插件

tp-watermark.js网页添加水印插件

作者:鹏仔先生

tp-watermark.js网页添加水印插件

    上周五,出差去改上个前端遗留的小问题,用到了watermark.js这个网站添加水印插件,功能很简单,就是给网页添加个水印,我看了下网上,有很多种,基本都是Canvas实现,我想要的是行与行之间交错效果,可是没有找到对应文档,看的烦的...

    那就自己简单写个网页添加水印插件吧, tp-watermark.js

    身为初级前端,写法比较low,但是功能很完善,请大家多多指导

下载插件:点击下载

DEMO下载:点击下载

下载完引入插件

使用水印

TpWatermark(CON,H,W,R,C,S,O);

删除水印

RemoveTpWatermark();

很方便使用,一列显示几行,一行显示几列都是计算的,大家不用自己定义(具体需要的参数已添加注释)。

  1. // 添加水印方法
  2. function TpWatermark(CON,H,W,R,C,S,O) {
  3. // 判断水印是否存在,如果存在,那么不执行
  4. if (document.getElementById('tp-watermark') != null) {
  5. return
  6. }
  7. var TpLine = parseInt(document.body.clientWidth/W) * 2; // 一行显示几列
  8. var StrLine = '';
  9. for(var i = 0; i < TpLine; i++){
  10. StrLine += '<span style="display: inline-block; line-height:' + H + 'px; width:' + W + 'px; text-align: center; transform:rotate(' + R + 'deg); color:' + C + '; font-size:'+ S + 'px; opacity:' + O + ';">'+ CON +'</span>'
  11. }
  12. var DivLine = document.createElement("div");
  13. DivLine.innerHTML = StrLine;
  14. var TpColumn = parseInt(document.body.clientHeight/H) * 2; // 一列显示几行
  15. var StrColumn = '';
  16. for(var i = 0; i < TpColumn; i++){
  17. StrColumn += '<div style="white-space: nowrap;">' + DivLine.innerHTML + '</div>';
  18. }
  19. var DivLayer = document.createElement("div");
  20. DivLayer.innerHTML = StrColumn;
  21. DivLayer.id = "tp-watermark"; // 给水印盒子添加类名
  22. DivLayer.style.position = "fixed";
  23. DivLayer.style.top = "0px"; // 整体水印距离顶部距离
  24. DivLayer.style.left = "-100px"; // 改变整体水印的left
  25. DivLayer.style.zIndex = "99999"; // 水印页面层级
  26. DivLayer.style.pointerEvents = "none";
  27. document.body.appendChild(DivLayer); // 到页面中
  28. }
  29. // 移除水印方法
  30. function RemoveTpWatermark(){
  31. // 判断水印是否存在,如果存在,那么执行
  32. if (document.getElementById('tp-watermark') == null) {
  33. return
  34. }
  35. document.body.removeChild(document.getElementById('tp-watermark'));
  36. }

页面需要使用时

  1. // 执行添加
  2. TpWatermark('水印','170','400','-20','red','70','.15');
  3. // TpWatermark(CON,H,W,R,C,S,O); // 值一一对应

CON  =>  水印文字内容

H    =>  水印行高

W    =>  水印宽度

R    =>  旋转度数(可为负值)

C    =>  水印字体颜色

S    =>  水印字体的大小

O    =>  水印透明度(0~1之间取值)

页面清除水印时

  1. // 执行移除
  2. RemoveTpWatermark();

水印行与行之间需要交错显示,需添加css代码(padding-left的交错值,设置的水印宽度的一半即可)

  1. /*通过此样式,控制行与行之间的交错显示 为0则不交错*/
  2. #tp-watermark div:nth-child(2n){
  3. padding-left: 200px;
  4. }

文档详情 tp-watermark.js网页添加水印插件,网页水印行与行交错

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/186955
推荐阅读
相关标签
  

闽ICP备14008679号