学习型 ASP/PHP/ASP.NET 主机 30元/年全能 ASP/PHP/ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付
发新话题
打印

[转载]运用AJAX实现右下角弹出提示框 示例

[转载]运用AJAX实现右下角弹出提示框 示例

复制内容到剪贴板
代码:
<BR>//定义XMLHttp实例<BR>var xmlHttp;<BR>function createXMLHttpRequest(){<BR>//开始初始化XMLHttpRequest对象<BR> if(window.ActiveXObject){<BR>//IE浏览器<BR> xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");<BR> }else if(window.XMLHttpRequest){<BR>//Mozilla浏览器<BR> xmlHttp = new XMLHttpRequest();<BR> }<BR>if(xmlHttp){<BR> //设置请求地址<BR> xmlHttp.open("GET","message.do?cmd=get",true);<BR> xmlHttp.onreadystatechange=setState;//设置回调函数<BR> xmlHttp.send(null);<BR> }<BR>}<BR>//回调函数<BR>function setState(){<BR> if(xmlHttp.readyState == 4){<BR> if(xmlHttp.status == 200){<BR> parseResults(xmlHttp.responseXML)<BR> }<BR> }<BR>} <BR>/*处理XML*/<BR>function parseResults(xmlDOM) {<BR>try{<BR>var root = xmlDOM.documentElement; <BR>var info = root.getElementsByTagName('message');<BR>var out = "";<BR>var message = null;<BR>var current = null;<BR> for(var i=0;i&lt;info.length;i++){<BR> message = info[i];<BR> id = message.getElementsByTagName("id")[0].firstChild.data;<BR> title = message.getElementsByTagName("title")[0].firstChild.data;<BR> out=out+(i+1)+"."+"&lt;a style=\"font-size:12px; color: #6D93C8; face: Tahoma\" title='内容提要:\n"<BR> +title<BR> +"\n时间:"<BR> +title<BR> +"'"+" href=# &gt;"<BR> +title<BR> +"&lt;/a&gt;&lt;BR&gt;";<BR> } <BR> popmsg("&lt;BR&gt;"+out);<BR> }catch(exception){<BR> // alert("出错了!");<BR> } <BR>}</P> <P>/*右下角提示框*/<BR>var oPopup = window.createPopup();<BR>var popTop=50;<BR>function popshow(){<BR>oPopup.show(screen.width-250,screen.height-popTop,241,172);<BR>}<BR>function pophide(){<BR>oPopup.hide();<BR>}<BR>function popmsg(msgstr){</P> <P> var winstr="&lt;table valign=\"top\" style=\"border: 1 solid #6D93C8\" width=\"241\" height=\"172\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" &gt;";<BR> winstr+="&lt;tr&gt;&lt;td bgcolor=\"#BCCCDF\" onClick=\"parent.pophide();\" valign=\"top\" align=\"center\" height=\"20\" style=\"font-size:14px; color: #6D93C8; face: Tahoma;filter:Blur(add=1,direction=45,strength=8) \"&gt;你有新短消息:&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign=\"top\" align=\"center\"&gt;&lt;table valign=\"top\" width=\"90%\" height=\"110\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"&gt;";<BR> winstr+="&lt;tr&gt;&lt;td valign=\"top\" style=\"font-size:12px; color: #6D93C8; face: Tahoma\"&gt;"+msgstr+"&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;";<BR> <BR> oPopup.document.body.innerHTML = winstr;<BR> popshow();<BR> setInterval('window.focus()',0); //让IE重获取焦点 <BR> <BR>}</P> <P>/*提示间隔时间*/<BR>var secs=5;//第一次提示时间秒<BR> function checkServer(secs){<BR> for(i=1;i&lt;=secs;i++) {<BR> window.setTimeout("update(" + i + ")", i * 1000);<BR> }<BR> }<BR> function update(num) {<BR> if(num == secs) {<BR> createXMLHttpRequest();<BR> secs=1*60;//提示时间秒<BR> for(i=1;i&lt;=secs;i++) {<BR> window.setTimeout("update(" + i + ")", i * 1000);<BR> }<BR> }<BR> else {<BR> printnr = secs-num;<BR> }<BR> }<BR>checkServer(secs);<BR>

请求的XML内容

复制内容到剪贴板
代码:
<BR>&lt;?xml version="1.0" encoding="UTF-8"?&gt;<BR>&lt;messages&gt;<BR> &lt;message&gt;<BR> &lt;id&gt;001&lt;/id&gt;<BR> &lt;title&gt;通知你今天来开会&lt;/title&gt;<BR> &lt;/message&gt;<BR>&lt;/messages&gt;<BR>

如果XML要动态生成则用下面代码
复制内容到剪贴板
代码:
<BR>&lt;%@ page import="java.util.List,com.sunflower.model.Message" contentType="text/xml;charset=utf-8"%&gt;<BR>&lt;%<BR> response.setContentType("text/xml");<BR> response.setHeader("Cache-Control", "no-cache");<BR> List list = (List)request.getAttribute("messages");<BR> <BR> out.println("&lt;messages&gt;");<BR> if(list!=null)<BR> for(int i=0;i&lt;list.size();i++){<BR> Message objM = (Message)list.get(i);<BR> out.println("&lt;message&gt;");<BR> out.println("&lt;id&gt;"+objM.getId()+"&lt;/id&gt;");<BR> out.println("&lt;title&gt;"+objM.getTitle()+"&lt;/title&gt;");<BR> out.println("&lt;/message&gt;");<BR> }<BR> out.println("&lt;/messages&gt;");<BR> %&gt;<BR>

TOP

复制内容到剪贴板
代码:
<BR>&lt;html&gt;<BR>&lt;head&gt;<BR>&lt;meta http-equiv="Content-Type" content="text/html; charset=gb2312" /&gt;<BR>&lt;title&gt;右下角弹出提示&lt;/title&gt;<BR>&lt;/head&gt;<BR>&lt;script type="text/javascript" src="ajax.js"&gt;&lt;/script&gt;<BR>&lt;body&gt;<BR>&lt;input type="button" onclick="createXMLHttpRequest()" value="测试请求" /&gt;<BR>&lt;div id="contain"&gt;&lt;/div&gt;<BR>&lt;/body&gt;<BR>&lt;/html&gt;<BR>

[shadow=255,purple,5]好人不长命,祸害一万年![/shadow]

TOP

版主,不行呀!!试了一下,不能使用!!!这是我的QQ:460089216 ,我们用QQ聊

TOP

版主,你那个【"message.do?cmd=get"】,是不是处理数据的页面,还是什么呀,在ASP.NET应该怎么去理解和写呀,求救!!!!

TOP

我调试试下,谢谢版主

TOP

这个太复杂了吧
  有直接的控件可以使用的
详细可以看我的博客里有写文章和示例代码
http://beniao.cnblogs.com
博客:http://beniao.cnblogs.com

TOP

发新话题