JSP實現(xiàn)頁面右下角消息彈框

jsp頁面上通過js實現(xiàn)消息彈出框,樣式可根據(jù)要求修改,這邊只是一個簡單的示范例子,自定義了兩條消息,彈框效果如下

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根據(jù)實際情況取
 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里已經(jīng)初始化了
 
 settimeout("tips_pop()",0); //調(diào)用tips_pop()這個函數(shù)
 }
 
 function tips_pop() {
 var msgpop = document.getelementbyid("winpop");//獲取窗口這個對象,即id為winpop的對象
 var poph = parseint(msgpop.style.height);//用parseint將對象的高度轉(zhuǎn)化為數(shù)字,以方便下面比較
 
 if (poph == 0) { //如果窗口的高度是0
 msgpop.style.display = "block";//那么將隱藏的窗口顯示出來
 show = setinterval("changeh('up')", 2);//開始以每0.002秒調(diào)用函數(shù)changeh("up"),即每0.002秒向上移動一次
 } else { //否則
 hide = setinterval("changeh('down')", 2);//開始以每0.002秒調(diào)用函數(shù)changeh("down"),即每0.002秒向下移動一次
 }
 }
 function changeh(str) {
 var msgpop = document.getelementbyid("winpop");
 var poph = parseint(msgpop.style.height);
 if (str == "up") { //如果這個參數(shù)是up
 if (poph <= 100) { //如果轉(zhuǎn)化為數(shù)值的高度小于等于100
 msgpop.style.height = (poph + 4).tostring() + "px";//高度增加4個象素
 } else {
 clearinterval(show);//否則就取消這個函數(shù)調(diào)用,意思就是如果高度超過100象度了,就不再增長了
 }
 }
 if (str == "down") {
 if (poph >= 4) { //如果這個參數(shù)是down
 msgpop.style.height = (poph - 4).tostring() + "px";//那么窗口的高度減少4個象素
 } else { //否則
 clearinterval(hide); //否則就取消這個函數(shù)調(diào)用,意思就是如果高度小于4個象度的時候,就不再減了
 msgpop.style.display = "none"; //因為窗口有邊框,所以還是可以看見1~2象素沒縮進去,這時候就把div隱藏掉
 }
 }
 }
 </script>
 
 <%if(num>0){ %>
 <div id="winpop">
 <div class="title" >系統(tǒng)信息<br>
 共有<font color="red"><big><%=num %></big></font>條未讀消息
 <span class="close" οnclick="tips_pop()">x</div>
 <%for(int i=0;i<num;i++) { %>
 <!-- 點擊信息標題鏈接到信息明細,傳遞信息編號參數(shù) -->
 <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>

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持碩編程。

相關文章
亚洲国产精品第一区二区,久久免费视频77,99V久久综合狠狠综合久久,国产免费久久九九免费视频