2012/10/25 11:30:17作者:佚名来源:网络
【实例名称】
JS代码实现类似MSN的消息提示
【实例描述】
当MSN中有邮件或消息时,会在右下角出现一个提示窗口。本例学习如何制作此类型的提示效果。
【实例代码】
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>类MSN提示的页面效果-学无忧(www.xue51.com)</title> <script language="JavaScript"> window.onload = viewMsg; //加载页面时,即刻获取短消息 window.onresize = resizeDiv; //根据窗体高度和宽度,改变短消息提示框的高度和宽度 window.onerror = function(){} //出现错误时,不做任何处理 var divTop,divLeft,divWidth,divHeight,docHeight,docWidth,objTimer,i = 0; //关于位置的相关变量 function viewMsg() { try { divTop = parseInt(document.getElementById("divMsg").style.top,10) //div的x坐标 divLeft = parseInt(document.getElementById("divMsg").style.left,10) //div的y坐标 divHeight = parseInt(document.getElementById("divMsg").offsetHeight,10) //div的高度 divWidth = parseInt(document.getElementById("divMsg").offsetWidth,10) //div的宽度 docWidth = document.body.clientWidth; //窗体宽度 docHeight = document.body.clientHeight; //窗体高度 document.getElementById("divMsg").style.top = parseInt(document.body.scrollTop,10) + docHeight + 10; //设置div的Y坐标 document.getElementById("divMsg").style.left = parseInt(document.body.scrollLeft,10) + docWidth - divWidth //设置div的X坐标 document.getElementById("divMsg").style.visibility="visible" //设置div显示 objTimer = window.setInterval("moveDiv()",10) //设置定时器 } catch(e){} } function resizeDiv() { i+=1 if (i>500) closeDiv() try { divHeight = parseInt(document.getElementById("divMsg").offsetHeight,10) //设置div高度 divWidth = parseInt(document.getElementById("divMsg").offsetWidth,10) //设置div宽度 docWidth = document.body.clientWidth; //获取窗体宽度 docHeight = document.body.clientHeight; //设置窗体高度 document.getElementById("divMsg").style.top = docHeight - divHeight + parseInt(document.body.scrollTop,10)//设置div的y坐标 document.getElementById("divMsg").style.left = docWidth - divWidth + parseInt(document.body.scrollLeft,10)//设置div的x坐标 } catch(e){} } function moveDiv() { try { if (parseInt(document.getElementById("divMsg").style.top,10) <= (docHeight - divHeight + parseInt(document.body.scrollTop,10))) { window.clearInterval(objTimer) objTimer = window.setInterval("resizeDiv()",1) //调整div的位置和大小 } divTop = parseInt(document.getElementById("divMsg").style.top,10) //获取y坐标 document.getElementById("divMsg").style.top = divTop - 1 //调整div的Y坐标 } catch(e){} } function closeDiv() { document.getElementById('divMsg').style.visibility='hidden'; //将短信息提示层隐藏 if(objTimer) window.clearInterval(objTimer); //清除定时器 } </script> </head> <body scroll="no"> 注意右下角的提示<br /> <DIV id=divMsg style="BORDER-RIGHT: #455690 1px solid; BORDER-TOP: #a6b4cf 1px solid; Z-INDEX:99999; LEFT: 0px; VISIBILITY: hidden; BORDER-LEFT: #a6b4cf 1px solid; WIDTH: 180px; BORDER-BOTTOM: #455690 1px solid; POSITION: absolute; TOP: 0px; HEIGHT: 116px; BACKGROUND-COLOR: #c9d3f3"> <TABLE style="BORDER-TOP: #ffffff 1px solid; BORDER-LEFT: #ffffff 1px solid" cellSpacing=0 cellPadding=0 width="100%" bgColor=#cfdef4 border=0> <TBODY> <TR> <TD style="FONT-SIZE: 12px;COLOR: #0f2c8c" width=30 height=24></TD> <TD style="FONT-WEIGHT: normal; FONT-SIZE: 12px; COLOR: #1f336b; PADDING-TOP: 4px;PADDING-left: 4px" vAlign=center width="100%"> 短消息提示:</TD> <TD style="PADDING-TOP: 2px;PADDING-right:2px" vAlign=center align=right width=19><span title=关闭 style="CURSOR: hand;color:red;font-size:12px;font-weight:bold;margin-right:4px;" onclick=closeDiv() >×</span></TD> </TR> <TR> <TD style="PADDING-RIGHT: 1px;PADDING-BOTTOM: 1px" colSpan=3 height=90> <DIV style="BORDER-RIGHT: #b9c9ef 1px solid; PADDING-RIGHT: 13px; BORDER-TOP: #728eb8 1px solid; PADDING-LEFT: 13px; FONT-SIZE: 12px; PADDING-BOTTOM: 13px; BORDER-LEFT: #728eb8 1px solid; WIDTH: 100%; COLOR: #1f336b; PADDING-TOP: 18px; BORDER-BOTTOM: #b9c9ef 1px solid; HEIGHT: 100%"> 您有<font color=#FF0000>1</font>条新消息<BR><BR> <DIV align=center style="word-break:break-all"> <a href="Javascript:alert('内容:好久不见,出来吃饭吧')"> <font color=#FF0000>点击查看短信</font></a></DIV> </DIV> </TD> </TR> </TBODY> </TABLE> </DIV> </body> </html>
【运行效果】
【难点剖析】
本例中定义了div消息层的4个常用方法:·“viewMsg’’方法用来显示提示信息,显示时根据窗体的高度和宽度,调整div层的位置和大小;·“resizeDiv”方法用来调整div层的大小;·“moveDiv”方法用来设置div层的Y坐标,一般用于窗体文本,和位置改变时;·“closeDiV”方法用来隐藏diV,调用diV的“Visibility’’属性,并设置其值为“hidden”。
【源码下载】
标签: 提示 JS代码
相关文章
金山数据恢复大师官方版 v1.0.0.2
详情南方测绘Cass10v10.1.6中文
详情revit 2017
详情KeyShot Pro 9中文(附安装教程) v9.0.286
详情网易新闻客户端v105.3
详情AIMP4v5.11.2421中文绿色美化版
详情onekey一键还原v18.0.18.1008
详情浩辰CAD2020绿色v20.0
详情好图网图标转换工具v4.9.7
详情Adobe indesign cs6
详情aardiov35.0.0中文最新版
详情Adobe Creative Cloud 2024简体中文v5.3.0.48
详情暴风影音16 v9.04.1029去广告精简版
详情ASP.NET Maker 2019(ASP.NET代码生成工具)v12.0.4.0
详情暴风影音v5.92.0824.1111
详情迅雷5稳定版v5.8.14.706
详情使命召唤17官方中文版 v1.0
详情死亡之雨新的僵尸病毒中文v1.0绿色免安装版
详情辐射4v1.7.15.0整合版
详情克莉2v1.0中文版
详情冬日计划v1.2中文版
详情刺客信条英灵殿v1.0吾爱
详情刺客信条英灵殿终极v1.0免安装
详情动物森友会v1.10.0最新
详情哈迪斯杀出地狱v1.37中文
详情嗜血印中文豪华版v1.0豪华版 附游戏攻略秘籍
详情城市战斗v1.0中文
详情尼尔人工生命v1.0steam免费
详情尼尔人工生命升级版v1.0PC
详情层层恐惧2中文v1.0绿色免安装版
详情往日不再v1.0 steam
详情往日不再v1.0pc
详情小生活游戏内置MOD版v2.0(57)安卓版
详情使命召唤手游测试服最新版v1.9.41安卓版
详情三国谋定天下官服v1.2.1安卓版
详情热血新手村高爆版v1.0.0安卓版
详情我养你啊手机版v1.0.0安卓版
详情看懂了就很恐怖的故事(细思极恐)中文版v1.0安卓版
详情背包英雄中文手机版v1.1.1安卓版
详情glow官方版v2.0.9安卓版
详情三国大时代4霸王立志官方正版v1.9安卓版
详情飞卢小说阅读器手机版v7.0.7安卓版
详情牛牛粤语词典软件v20.4.4安卓版
详情PrettyUp视频美化瘦身软件v2.3.0
详情化学方程式app中文版v1.1.0.20安卓版
详情地下城堡3魂之诗2024安卓最新版v1.2.3安卓版
详情南方都市报v6.10.0安卓版
详情阿修罗之眼正版v1.0.10安卓版
详情