ajax制作网页右下角弹出提示效果

80酷酷网    80kuku.com

  

记得以前做自动提醒都是使用iframe框架,在一个框架里不停的刷新.检测是否有新的消息.但在使用类似于MSN的提醒中,弹出的提示框信息都是在iframe框架中显示.即当iframe框架不可见时,提示信息也就看不到.并且在整个页面效果上还的考虑一些浏览器对框架的支持.

    使用ajax(动态网站静态化)技术,分两部分来说明.首先是后台的处理.这里我是在网上下载的ajax(动态网站静态化) dll文件(schwarz-interactive.de, Michael Schwarz,版本5.7.22.2),减少自己写ajax(动态网站静态化) common的时间.

    后台代码开起来是相对的简单.对ajax(动态网站静态化).dll的引用(webconfig中需要添加对ashx的处理).调用页面的加载(page_load)中增加一行代码注册,我这使用页面为index.aspx(class为index)

ajax(动态网站静态化).Utility.RegisterTypeForajax(动态网站静态化)(GetType(index))
    然后增加一个需要通知的函数.下面是一个邮件信息通知的函数.string类型返回邮件的信息.

<ajax(动态网站静态化).ajax(动态网站静态化)Method()> Public Function GetdealMessageShow(ByVal v As String) As String Dim userid As Integer Try userid = CType(v, Integer) REM v为个人ID信息 Catch ex As Exception Exit Function End Try Dim value As String = datacls.Email_TopDealinfo(userid) REM 数据处理放在datacls中 Return value End Function
    需要说明的是必须加上<ajax(动态网站静态化).ajax(动态网站静态化)Method()>并且使用public 声明,本人曾采用friend.会提示出错.

    这样后台的程序完成了.现在在前台的页面中加入javascript调用即可.

function CheckIsNewSystemInfo() { var v=document.getElementById('Hiddenuserid').innerHTML ; index.GetdealMessageShow(v,GetdealMessageShow_callback); //index与后台的RegisterTypeForajax(动态网站静态化)类型一致. } function GetdealMessageShow_callback(res) { var s=res.value; if(s!='' && s!=null) { var strTmp=s.split("|"); document.getElementById('PopupWin1titleEl').innerHTML ='::::::系统提示::::::'; document.getElementById('PopupWin1aCnt').innerHTML='<span id=popupwin1_emailid>'+strTmp[0]+'</span>'+strTmp[1]; //strTmp[0]为ID,主要是用于关闭提示窗时去掉已提醒的信息,strTmp[1]为内容 PopupWin1espopup_winLoad(); } }
    在页面的最底部加入一段javascript ,让它每5秒中自动执行一次读取服务器信息.

window.setInterval("CheckIsNewSystemInfo()",5000);
    最后加上提示框代码.网上比较多.这里是类似于MSN的右下角弹出提示框.

 



分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: