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

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</div>
<%for(int i=0;i<num;i++) { %>
<!-- 点击信息标题链接到信息明细,传递信息编号参数 -->
<a href="/xxxaction.do?msgid=<%=unreadlist.get(i).get("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>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持硕编程。
相关文章
- jsp+servlet实现文件上传与下载功能
- EJB3.0部署消息驱动Bean抛javax.naming.NameNotFoundException异常
- 在JSP中使用formatNumber控制要显示的小数位数方法
- 秒杀系统Web层设计的实现方法
- 将properties文件的配置设置为整个Web应用的全局变量实现方法
- JSP使用过滤器防止Xss漏洞
- 在JSP页面中动态生成图片验证码的方法实例
- 详解JSP 内置对象request常见用法
- 使用IDEA编写jsp时EL表达式不起作用的问题及解决方法
- jsp实现局部刷新页面、异步加载页面的方法
- Jsp中request的3个基础实践
- JavaServlet的文件上传和下载实现方法
- JSP页面的静态包含和动态包含使用方法


