我是靠谱客的博主 淡然帅哥,最近开发中收集的这篇文章主要介绍使用js技术在jsp页面实现水印(时间和当前登录用户名)功能,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

出于安全的考虑,项目需要,需要在jsp的页面显示水印的功能,防止用户信息泄露。

 

在js里获取系统当前时间:


function init(){
var date=new Date();
//年
var year=date.getFullYear();
//月
var month=date.getMonth()+1;
//日
var day=date.getDate();
var rq=year+"-"+month+"-"+day;
}

获取当前登录用户信息:

我是通过session来获取的,在你当前的jsp页面输入如下代码:来获取name和orgname,相当于把这两个参数通过jsp页面拿到数据,通过init方法传到js里,然后进行显示。

jQuery(document).ready(function(){
Metronic.init();
controller = new hdkzEditViewController({appctx:'${ctx2}',webctx:'${web}'});
var name = '<%=session.getAttribute("SRFUSERNAME")%>';
var orgname = '<%=session.getAttribute("SRFORGNAME")%>';
controller.init({parentMode:<%=p.getParentMode()%>,parentData:<%=p.getParentData()%>,username:name,orgname:orgname});
});

 

直接在项目初始化函数里把如下的js代码放进去即可;

var hdkzEditViewController = hdkzEditViewControllerBase.extend({
init:function(params){
var date =new Date();
var year=date.getFullYear();
var month=date.getMonth()+1;
var day=date.getDate();
var riqi=year+"-"+month+"-"+day
if(navigator.appName == "Microsoft Internet Explorer"&& navigator.appVersion.match(/11./i)!="11."){
$("p[name='p1$']").remove();
var winwidth$ = document.body.scrollWidth-17;
var winheight$ = document.body.scrollHeight;
$("body").append("<p id='waterSum_11' name='p1$' class='cover_through cover js-click-to-alert'>XXXX"+"&nbsp;"+params.orgname+"</br>"+params.username+"&nbsp;"+riqi+"</p>");
var fleft = Number($('#waterSum_11').css("margin-left").substring(0,$('#waterSum_11').css("margin-left").indexOf('p')));
var ftop = Number($('#waterSum_11').css("margin-top").substring(0,$('#waterSum_11').css("margin-top").indexOf('p')));
var perWidth = $("#waterSum_11").width();
var perHeight = Number('140px'.substring(0,'140px'.indexOf('p')))+100;
var lines = parseInt(winwidth$/(perWidth+fleft));
var rows = Math.round(winheight$/(perHeight+ftop));
var totalPWidth = perWidth*lines;
var totalSpace = winwidth$-totalPWidth;
var perSpace = parseInt(totalSpace/(lines+1));
$('#waterSum_11').css("margin-left",perSpace);
for(var i=1;i<=rows;i++) {
for(var j=1;j<=lines;j++){
if(i==1){
if(j<=lines-1){
var p = "<p id='waterSum_"+i+""+(j+1)+"' name='p1$' class='cover_through cover js-click-to-alert'>XXXX"+"&nbsp;"+params.orgname+"</br>"+params.username+"&nbsp;"+riqi+"</p>";
var ileft = $('#waterSum_'+i+''+j).css("margin-left").substring(0,$('#waterSum_'+i+''+j).css("margin-left").indexOf('p'));
var itop = $('#waterSum_11').css("margin-top").substring(0,$('#waterSum_11').css("margin-top").indexOf('p'));
$("body").append(p);
$('#waterSum_'+i+''+(j+1)).css("margin-left",Number(ileft)+Number(perWidth)+perSpace);
$('#waterSum_'+i+''+(j+1)).css('margin-top',itop);
}
}else{
var p = "<p id='waterSum_"+i+""+j+"' name='p1$' class='cover_through cover js-click-to-alert'>${TmpContent}</p>";
var ileft = $('#waterSum_'+(i-1)+''+j).css("margin-left").substring(0,$('#waterSum_'+(i-1)+''+j).css("margin-left").indexOf('p'));
var itop = $('#waterSum_'+(i-1)+''+j).css("margin-top").substring(0,$('#waterSum_'+(i-1)+''+j).css("margin-top").indexOf('p'));
$("body").append(p);
$('#waterSum_'+i+''+j).css("margin-left",Number(ileft));
$('#waterSum_'+i+''+j).css('margin-top',Number(itop)+Number(perHeight));
}
}
}
$(".cover").mouseenter(function(){
$(this).stop(true).fadeOut().delay(1500).fadeIn(50);
});
}else{
var winwidth$ = document.body.clientWidth;
var winheight$ = document.body.scrollHeight;
var waterSum$ = 100;
var oldleft$=0;
var maxI$=0;
var k$=0;
$("body").append("<div class='cover-Blink-area'> </div>");
$('.cover-Blink-area').css('height','1000px');
for( var i=1;i<=waterSum$;i++) {
$(".cover-Blink-area").append("<p id='waterSum_" +i+"' class='cover_through cover-Blink js-click-to-alert'>XXXX"+"&nbsp;"+params.orgname+"</br>"+params.username+"&nbsp;"+riqi+"</p>");
var left = Number(document.getElementById("waterSum_" +i).offsetLeft);
if(left>oldleft$) {
oldleft$ = left;
maxI$ = i;
}
if (left<oldleft$&&k$==0){
var top = $("#waterSum_1").css("margin-top").substring(0,$("#waterSum_1").css("margin-top").indexOf('p'));
var bottom = $("#waterSum_1").css("margin-bottom").substring(0,$("#waterSum_1").css("margin-bottom").indexOf('p'));
var pHeight = $("#waterSum_1").height();
var totalHeight = Number(top)+Number(pHeight)+Number(bottom);
var Hnum = Math.round(500/(totalHeight/1.3));
waterSum$ = 2*Hnum*maxI$;
k$++;
}
}
}
arguments.callee.$.init.call(this,params);
}
});

 

XXXX 就是你可以自己定义在页面显示的内容。

最后

以上就是淡然帅哥为你收集整理的使用js技术在jsp页面实现水印(时间和当前登录用户名)功能的全部内容,希望文章能够帮你解决使用js技术在jsp页面实现水印(时间和当前登录用户名)功能所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部