JSP实现页面右下角消息弹框
时间:2020-02-03来源:电脑系统城作者:电脑系统城
JSP页面上通过JS实现消息弹出框,样式可根据要求修改,这边只是一个简单的示范例子,自定义了两条消息,弹框效果如下
![](/d/file/biancheng/JSP/2020-02-03/067e4dbec0bf62100df425f8985b37a2.jpg?201963110659)
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=<%=unreadList.get(i).get(" rel="external nofollow" 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 %>" rel="external nofollow" ><font color="red">更多未读消息...</font></a></center>
- </div>
- <%} %>
- </body>
- </html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关信息
-
JSP实现分页效果
这篇文章主要为大家详细介绍了JSP实现分页效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...
2020-02-03
-