您现在的位置是:网站首页> 编程资料编程资料
给原生html中添加水印遮罩层的实现示例Html5页面点击遮罩层背景关闭遮罩层HTML实现遮罩层的方法 HTML中如何使用遮罩层
2021-08-30
1125人已围观
简介 这篇文章主要介绍了给原生html中添加水印遮罩层的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
效果图

代码
水印遮罩 Hello WorldHello World 2Hello World 3
核心代码
const watermarkId = "watermarkId"; // 水印遮罩函数 function watermarkUtils(settings, id) { //默认设置 var defaultSettings={ watermark_txt: "text", watermark_x: 10,//水印起始位置x轴坐标 watermark_y: 20,//水印起始位置Y轴坐标 watermark_rows: 55,//水印行数 watermark_cols: 55,//水印列数 watermark_x_space: 10,//水印x轴间隔 watermark_y_space: 10,//水印y轴间隔 watermark_color: '#000000',//水印字体颜色 watermark_alpha: 0.2,//水印透明度 watermark_fontsize: '15px',//水印字体大小 watermark_font: '微软雅黑',//水印字体 watermark_width: 50,//水印宽度 watermark_height: 20,//水印长度 watermark_angle: 25//水印倾斜度数 }; //采用配置项替换默认值,作用类似jquery.extend if(typeof settings === "object") { var src = settings; for(let key in src) { if(src[key] && defaultSettings[key] && src[key] === defaultSettings[key]) continue; else if(src[key]) defaultSettings[key]=src[key]; } } var oTemp = document.createDocumentFragment(); // var oTemp = document.createElement("div"); //获取页面最大宽度 var page_width = Math.max(document.body.scrollWidth,document.body.clientWidth); //获取页面最大长度 var page_height = Math.max(document.body.scrollHeight,document.body.clientHeight); //如果将水印列数设置为0,或水印列数设置过大,超过页面最大宽度,则重新计算水印列数和水印x轴间隔 if (defaultSettings.watermark_cols == 0 || (parseInt(defaultSettings.watermark_x + defaultSettings.watermark_width *defaultSettings.watermark_cols + defaultSettings.watermark_x_space * (defaultSettings.watermark_cols - 1)) > page_width)) { defaultSettings.watermark_cols = parseInt((page_width-defaultSettings.watermark_x+defaultSettings.watermark_x_space) / (defaultSettings.watermark_width + defaultSettings.watermark_x_space)); defaultSettings.watermark_x_space = parseInt((page_width - defaultSettings.watermark_x - defaultSettings.watermark_width * defaultSettings.watermark_cols) / (defaultSettings.watermark_cols - 1)); } //如果将水印行数设置为0,或水印行数设置过大,超过页面最大长度,则重新计算水印行数和水印y轴间隔 if (defaultSettings.watermark_rows == 0 || (parseInt(defaultSettings.watermark_y + defaultSettings.watermark_height * defaultSettings.watermark_rows + defaultSettings.watermark_y_space * (defaultSettings.watermark_rows - 1)) > page_height)) { defaultSettings.watermark_rows = parseInt((defaultSettings.watermark_y_space + page_height - defaultSettings.watermark_y) / (defaultSettings.watermark_height + defaultSettings.watermark_y_space)); defaultSettings.watermark_y_space = parseInt(((page_height - defaultSettings.watermark_y) - defaultSettings.watermark_height * defaultSettings.watermark_rows) / (defaultSettings.watermark_rows - 1)); } var x; var y; for (var i = 0; i < defaultSettings.watermark_rows; i++) { y = defaultSettings.watermark_y + (defaultSettings.watermark_y_space + defaultSettings.watermark_height) * i; for (var j = 0; j < defaultSettings.watermark_cols; j++) { x = defaultSettings.watermark_x + (defaultSettings.watermark_width + defaultSettings.watermark_x_space) * j; var mask_div = document.createElement('div'); mask_div.id = 'mask_div' + i + j; mask_div.appendChild(document.createTextNode(defaultSettings.watermark_txt)); //设置水印div倾斜显示 mask_div.style.webkitTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)"; mask_div.style.MozTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)"; mask_div.style.msTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)"; mask_div.style.OTransform = "rotate(-" + defaultSettings.watermark_angle + "deg)"; mask_div.style.transform = "rotate(-" + defaultSettings.watermark_angle + "deg)"; mask_div.style.visibility = ""; mask_div.style.position = "absolute"; //选不中 mask_div.style.left = x + 'px'; mask_div.style.top = y + 'px'; mask_div.style.overflow = "hidden"; mask_div.style.zIndex = "9999"; mask_div.style.pointerEvents = "none"; //mask_div.style.border="solid #eee 1px"; mask_div.style.opacity = defaultSettings.watermark_alpha; mask_div.style.fontSize = defaultSettings.watermark_fontsize; mask_div.style.color = defaultSettings.watermark_color; mask_div.style.textAlign = "center"; mask_div.style.width = defaultSettings.watermark_width + 'px'; mask_div.style.height = defaultSettings.watermark_height + 'px'; mask_div.style.display = "block"; oTemp.appendChild(mask_div); }; }; // document.body.appendChild(oTemp); try { // console.log(document.getElementById(id), "document.getElementById(id)"); document.getElementById(id).appendChild(oTemp); } catch(error) { console.error(error, "遮罩异常"); } }; // 使用 watermarkUtils({ watermark_txt: "9527", watermark_width: 60, watermark_fontsize: "14px" }, watermarkId);到此这篇关于给原生html中添加水印遮罩层的实现示例的文章就介绍到这了,更多相关html添加水印遮罩层内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!
相关内容
- 使用HTML+Css+transform实现3D导航栏的示例代码html+css+js实现导航栏滚动渐变效果Html5导航栏吸顶方案原理与对比实现html5 横向滑动导航栏的方法示例html+css 实现简易导航栏功能基于html和CSS3制作简单侧边导航栏基于html和CSS3制作酷炫的导航栏使用Html+Css实现简易导航栏功能(导航栏遇到鼠标切换背景颜色)
- Html5页面播放M4a音频文件HTML5 video循环播放多个视频的方法步骤HTML5 通过Vedio标签实现视频循环播放的示例代码HTML5播放实现rtmp流直播html5视频自动横过来自适应页面且点击播放功能的实现html5中嵌入视频自动播放的问题解决html5 移动端视频video的android兼容(去除播放控件、全屏)HTML5自定义mp3播放器源码HTML5自定义视频播放器源码html5自定义video标签的海报与播放按钮功能解决HTML5中的audio在手机端和微信端的不能自动播放问题
- 利用html+css实现菜单栏缓慢下拉效果的示例代码如何通过 display:olck/none 完成一个菜单栏使用layui实现左侧菜单栏及动态操作tab项的方法Html+Css+Jquery实现左侧滑动拉伸导航菜单栏的示例代码使用HTML+CSS实现鼠标划过的二级菜单栏的示例详解css3 Transition属性(平滑过渡菜单栏案例)菜单栏 “三” 变形为“X”css3过渡动画利用CSS实现几款不错的菜单栏实例代码CSS仿网易首页的头部菜单栏按钮和三角形制作方法纯CSS制作菜单栏当鼠标经过时会变色的
- 使用canvas实现雪花飘动效果的示例代码HTML5 canvas实现雪花飘落特效html5的canvas实现3d雪花飘舞效果
- 前端Html5如何实现分享截图的示例代码HTML5中外部浏览器唤起微信分享功能的代码html5 canvas手势解锁源码分享HTML5中外部浏览器唤起微信分享Html5页面二次分享的实现微信端html5页面调用分享接口示例详解html5 canvas 微信海报分享(个人爬坑)利用HTML5 Canvas制作键盘及鼠标动画的实例分享使用纯HTML5编写一款网页上的时钟的代码分享使用html5 canvas 画时钟代码实例分享HTML5图片预览实例分享
- html5实现可拖拽移动的悬浮图标的示例代码HTML5中在title标题标签里设置小图标的方法HTML5、Select下拉框右边加图标的实现代码(增进用户体验)
- html+css实现图片扫描仪特效 html+css实现充电水滴融合特效代码html+css实现血轮眼轮回眼特效代码
- HTML5数字输入仅接受整数的实现代码html5实现点击弹出图片功能html5 录制mp3音频支持采样率和比特率设置html5表单的required属性使用html5调用摄像头实例代码HTML5页面音频自动播放的实现方式Html5大屏数据可视化开发的实现html实现弹窗的实例HTML5来实现本地文件读取和写入的实现方法HTML 罗盘式时钟的实现HTML5简单实现添加背景音乐的几种方法
- Html5移动端div固定到底部实现底部导航条的几种方式使用HTML5做的导航条详细步骤CSS导航条菜单之带小三角形的实现代码使用CSS3制作倾斜导航条和毛玻璃效果CSS实现导航条Tab切换的三种方法介绍CSS实现五颜六色按钮组成的导航条效果代码纯CSS实现的紫罗兰风格导航条效果代码DIV+CSS实现仿京东商城导航条效果用CSS手写导航条没有任何图片附效果图二个简单的菜单导航条示例css3 给页面加个半圆形导航条主要利用旋转和倾斜样式
- HTML5拖拽文件上传的示例代码html5拖拽排序多图片上传插件特效源码HTML5 拖拽批量上传文件的示例代码html5实现多图片预览上传及点击可拖拽控件html5使用Drag事件编辑器拖拽上传图片的示例代码HTML5+CSS3实现无插件拖拽上传图片(支持预览与批量)HTML5 canvas实现移动端上传头像拖拽裁剪效果结合html5+nodejs+express实现拖拽上传的功能HTML5拖拽文件到浏览器并实现文件上传下载功能代码html5 拖拽上传图片实例演示
