文章詳情頁(yè)
JSP實(shí)現(xiàn)頁(yè)面右下角消息彈框
瀏覽:132日期:2022-06-07 14:24:29
JSP頁(yè)面上通過(guò)JS實(shí)現(xiàn)消息彈出框,樣式可根據(jù)要求修改,這邊只是一個(gè)簡(jiǎn)單的示范例子,自定義了兩條消息,彈框效果如下
JSP頁(yè)面
<%@ 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ù)實(shí)際情況取 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";//要初始化這個(gè)高度,雖然CSS里已經(jīng)初始化了 setTimeout("tips_pop()",0); //調(diào)用tips_pop()這個(gè)函數(shù) } function tips_pop() { var MsgPop = document.getElementById("winpop");//獲取窗口這個(gè)對(duì)象,即ID為winpop的對(duì)象 var popH = parseInt(MsgPop.style.height);//用parseInt將對(duì)象的高度轉(zhuǎn)化為數(shù)字,以方便下面比較 if (popH == 0) { //如果窗口的高度是0 MsgPop.style.display = "block";//那么將隱藏的窗口顯示出來(lái) show = setInterval("changeH("up")", 2);//開始以每0.002秒調(diào)用函數(shù)changeH("up"),即每0.002秒向上移動(dòng)一次 } else { //否則 hide = setInterval("changeH("down")", 2);//開始以每0.002秒調(diào)用函數(shù)changeH("down"),即每0.002秒向下移動(dòng)一次 } } function changeH(str) { var MsgPop = document.getElementById("winpop"); var popH = parseInt(MsgPop.style.height); if (str == "up") { //如果這個(gè)參數(shù)是UP if (popH <= 100) { //如果轉(zhuǎn)化為數(shù)值的高度小于等于100 MsgPop.style.height = (popH + 4).toString() + "px";//高度增加4個(gè)象素 } else { clearInterval(show);//否則就取消這個(gè)函數(shù)調(diào)用,意思就是如果高度超過(guò)100象度了,就不再增長(zhǎng)了 } } if (str == "down") { if (popH >= 4) { //如果這個(gè)參數(shù)是down MsgPop.style.height = (popH - 4).toString() + "px";//那么窗口的高度減少4個(gè)象素 } else { //否則 clearInterval(hide); //否則就取消這個(gè)函數(shù)調(diào)用,意思就是如果高度小于4個(gè)象度的時(shí)候,就不再減了 MsgPop.style.display = "none"; //因?yàn)榇翱谟羞吙?所以還是可以看見1~2象素沒縮進(jìn)去,這時(shí)候就把DIV隱藏掉 } } } </script> <%if(num>0){ %> <div id="winpop"> <div >系統(tǒng)信息<br> 共有<font color="red"><big><%=num %></big></font>條未讀消息 <span οnclick="tips_pop()">X</span></div> <%for(int i=0;i<num;i++) { %> <!-- 點(diǎn)擊信息標(biāo)題鏈接到信息明細(xì),傳遞信息編號(hào)參數(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> <!-- 點(diǎn)擊查看更多未讀消息 --> <a href="/XXXAction.do %>" ><font color="red">更多未讀消息...</font></a></center> </div> <%} %> </body></html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持。
標(biāo)簽:
JSP
排行榜
