DDR爱好者之家 Design By 杰米

JSP页面上通过JS实现消息弹出框,样式可根据要求修改,这边只是一个简单的示范例子,自定义了两条消息,弹框效果如下

JSP实现页面右下角消息弹框

JSP页面

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@page import="java.util.*"%>
<html>
 <head>
 <style type="text/css">
 #winpop { width:250px; height:0px; position:absolute; right:0; bottom:0; border:1px solid grey; margin:0; padding:1px; overflow:hidden; display:none; background:#FFFFFF}
 #winpop .title { width:100%; height:20px; line-height:20px; background:#0AB0FF ; font-weight:bold; text-align:center; font-size:12px;color:white}
 #winpop .con { width:100%; height:360px; line-height:80px; font-weight:bold; font-size:12px; color:#FF0000; text-decoration:underline; text-align:center}
 .close { position:absolute; right:4px; top:-1px; color:#FFFFFF; cursor:pointer}
 </style>
 </head>
<% 
 //未读消息unreadList根据实际情况取
 List<Map> unreadList = new ArrayList<Map>();
 Map<String,String> map1=new HashMap<String,String>();
 map1.put("msgId","1");
 map1.put("msgContent","message111111");
 unreadList.add(map1);
 Map<String,String> map2=new HashMap<String,String>();
 map2.put("msgId","2");
 map2.put("msgContent","message222222");
 unreadList.add(map2);
 int num=unreadList.size();
%>
 <body>
 <script language="javascript" type="text/javascript">
 window.onload = function tanchuang() { //加载
 document.getElementById('winpop').style.height = '0px';//要初始化这个高度,虽然CSS里已经初始化了
 
 setTimeout("tips_pop()",0); //调用tips_pop()这个函数
 }
 
 function tips_pop() {
 var MsgPop = document.getElementById("winpop");//获取窗口这个对象,即ID为winpop的对象
 var popH = parseInt(MsgPop.style.height);//用parseInt将对象的高度转化为数字,以方便下面比较
 
 if (popH == 0) { //如果窗口的高度是0
 MsgPop.style.display = "block";//那么将隐藏的窗口显示出来
 show = setInterval("changeH('up')", 2);//开始以每0.002秒调用函数changeH("up"),即每0.002秒向上移动一次
 } else { //否则
 hide = setInterval("changeH('down')", 2);//开始以每0.002秒调用函数changeH("down"),即每0.002秒向下移动一次
 }
 }
 function changeH(str) {
 var MsgPop = document.getElementById("winpop");
 var popH = parseInt(MsgPop.style.height);
 if (str == "up") { //如果这个参数是UP
 if (popH <= 100) { //如果转化为数值的高度小于等于100
 MsgPop.style.height = (popH + 4).toString() + "px";//高度增加4个象素
 } else {
 clearInterval(show);//否则就取消这个函数调用,意思就是如果高度超过100象度了,就不再增长了
 }
 }
 if (str == "down") {
 if (popH >= 4) { //如果这个参数是down
 MsgPop.style.height = (popH - 4).toString() + "px";//那么窗口的高度减少4个象素
 } else { //否则
 clearInterval(hide); //否则就取消这个函数调用,意思就是如果高度小于4个象度的时候,就不再减了
 MsgPop.style.display = "none"; //因为窗口有边框,所以还是可以看见1~2象素没缩进去,这时候就把DIV隐藏掉
 }
 }
 }
 </script>
 
 <%if(num>0){ %>
 <div id="winpop">
 <div class="title" >系统信息<br>
 共有<font color="red"><big><%=num %></big></font>条未读消息
 <span class="close" οnclick="tips_pop()">X</span></div>
 <%for(int i=0;i<num;i++) { %>
 <!-- 点击信息标题链接到信息明细,传递信息编号参数 -->
 <a href="/XXXAction.do"msgId") %>">
 <%if(String.valueOf(unreadList.get(i).get("msgContent")).length()>16) {%>
 <%=String.valueOf(unreadList.get(i).get("msgContent")).substring(0,16)+"..." %>
 <%} else{ %>
 <%=String.valueOf(unreadList.get(i).get("msgContent")) %>
 <%} %>
 </a><br>
 <%
 if(i>=1){//最多显示两条
 break;
 }
 } %>
 <center>
 <!-- 点击查看更多未读消息 -->
 <a href="/XXXAction.do %>" ><font color="red">更多未读消息...</font></a></center>
 </div>
 <%} %>
 </body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。