`
wzw00001
  • 浏览: 92508 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

JavaScript实现类似QQ、MSN消息提示的效果

阅读更多
/////////////////////////////////////////////////////  
// 鲤鱼论坛 - http://LiyuNet.Com/bbs  
// 2007-05-01  
// EZERG liyunet@yeah.net  
/////////////////////////////////////////////////////  
function $(n){  
    return document.getElementById(n);  
}  
 
function $i(i){  
    try{  
        return parseInt(i);  
    }catch(ex){  
        return 0;  
    }  
}  
 
function MessageTip(id)  
{  
    this.id = id;  
    this.obj = $(id);  
    this.divTop = $i(this.obj.style.top);  
    this.divLeft = $i(this.obj.style.left);  
    this.divHeight = this.obj.offsetHeight;  
    this.divWidth = this.obj.offsetWidth;  
    this.docWidth = document.body.clientWidth;  
    this.docHeight = document.body.clientHeight;  
    this.timeout= 150;  
    this.speed = 30;  
    this.step = 3;  
    this.timer = 0;  
    this.pause = false;  
    this.close = false;  
    this.autoClose = true;  
    this.add(this);  
}  
 
MessageTip.prototype.tips = new Array();  
 
MessageTip.prototype.add = function(mt)  
{  
    this.tips.push(mt);  
}  
 
MessageTip.prototype.show = function()  
{  
    if(this.onload()){  
    var me = this;  
    var mess = this.obj;  
    mess.onmouseover = function(){me.pause=true;};  
    mess.onmouseout = function(){me.pause=false;};  
    mess.style.top = $i(document.body.scrollTop) + this.docHeight + 10;  
    mess.style.left = $i(document.body.scrollLeft) + this.docWidth - this.divWidth;   
    mess.style.visibility = 'visible';  
    var moveUp = function()  
    {  
        var tHeight = me.divHeight;  
        var t = me.tips;  
        for(var i=0; i<t.length; i++){  
            var tt = t[i];  
            if(tt==me){  
                break;  
            }else{  
                tHeight += tt.divHeight + 3;  
            }  
        }  
        if($i(mess.style.top) <= (me.docHeight - tHeight + $i(document.body.scrollTop))){  
        me.timeout--;   
        if(me.timeout==0){  
              window.clearInterval(me.timer);  
                if(me.autoClose){  
                    me.hide();  
                }  
            }  
        } else {  
            mess.style.top = $i(mess.style.top) - me.step;  
      }  
    }  
    this.timer = window.setInterval(moveUp,this.speed);  
  }  
}  
 
MessageTip.prototype.hide = function()  
{  
    if(this.onunload()){  
        var me = this;  
        var mess = this.obj;  
    if(this.timer>0){  
      window.clearInterval(me.timer);  
    }  
        var moveDown = function()  
        {  
            if(me.pause==false || me.close){  
                if($i(mess.style.top) >= ($i(document.body.scrollTop) + me.docHeight + 10)){  
                window.clearInterval(me.timer);  
                mess.style.visibility='hidden';  
                } else {  
                mess.style.top = $i(mess.style.top) + me.step;  
            }  
          }  
      }  
      this.timer = window.setInterval(moveDown,this.speed);  
  }  
}  
 
MessageTip.prototype.resize = function()  
{  
    this.divHeight = $(this.id).offsetHeight;  
    this.divWidth = $(this.id).offsetWidth;  
    this.docWidth = document.body.clientWidth;  
    this.docHeight = document.body.clientHeight;  
    $(this.id).style.top = this.docHeight - this.divHeight + document.body.scrollTop;  
    $(this.id).style.left = this.docWidth - this.divWidth + document.body.scrollLeft;     
}  
 
MessageTip.prototype.onload = function()  
{  
    return true;  
}  
 
MessageTip.prototype.onunload = function()  
{  
    return true;  
}  


来源:http://www.iteye.com/topic/76993
分享到:
评论

相关推荐

    页面右下角弹出类似QQ或MSN的消息提示

    综上所述,实现"页面右下角弹出类似QQ或MSN的消息提示"这一功能,涉及到前端的JavaScript编程、CSS样式设计、动画效果实现,以及可能的后端实时通信。通过合理的技术选型和设计,可以创造出高效且用户友好的消息提示...

    页面右下角弹出消息提示框类似QQ或者MSN+ASP.NET

    综上所述,创建一个类似QQ或MSN的页面右下角弹出消息提示框涉及到前端的CSS布局、JavaScript交互、ASP.NET后端数据传递以及用户体验设计等多个方面的知识。通过合理的代码组织和充分的测试,可以实现一个高效、易用...

    【精华】页面右下角弹出类似QQ或MSN的消息提示

    标题中的“【精华】页面右下角弹出类似QQ或MSN的消息提示”指的是在网页设计中实现一种类似于即时通讯软件(如QQ、MSN)的消息提示功能。这种功能常见于许多网站,尤其是企业级应用,用于通知用户新消息、提醒或者...

    javascript实现弹消息提示框 像各大邮箱提示有新邮件收到或QQ和MSN提示

    通过以上步骤,你可以创建一个类似QQ、MSN或邮箱的新消息提示框,提供更加个性化的用户体验。这个提示框不仅可以在必要时显示信息,还可以通过关闭按钮让用户主动关闭,增强交互性。在实际项目中,还可以根据需求...

    页面右下角弹出类似QQ或MSN的消息提示.rar

    在网页设计中,为了增强用户体验和互动性,开发者经常会在页面右下角设计类似QQ或MSN的消息提示功能。这种功能可以模拟即时通讯软件中的消息通知,让用户在浏览网页时能够实时接收并查看重要信息。本教程将深入探讨...

    模仿MSN消息提示的效果

    本文将深入探讨如何实现类似MSN的消息提示效果,并提供相关技术细节。 首先,我们需要理解MSN消息提示的核心特点。这些特点包括: 1. **即时性**:当收到新消息时,系统会立即显示通知,让用户知道有新的交流内容...

    页面右下角弹出类似QQ、MSN多条消息提示(提示可连接)

    综上所述,实现“页面右下角弹出类似QQ、MSN多条消息提示”的功能,需要结合JavaScript的动态操作DOM、事件处理和CSS的样式设计。这个过程既考验开发者的技术功底,也对用户体验有着直接影响。在实际开发中,应不断...

    页面右下角弹出类似QQ或MSN的消息提示.pdf

    【网页右下角弹出类似QQ或...总之,`CLASS_MSN_MESSAGE`类提供了一种简单的方式来在网页的右下角创建具有类似QQ或MSN消息提示的动态效果。开发者可以通过调整参数和扩展方法来满足不同场景的需求,增强网页的用户体验。

    页面右下角弹出类似QQ、MSN多条消息提示(提示消息有URL链接)

    在网页设计和用户体验优化中,实现“页面右下角弹出类似QQ、MSN多条消息提示(提示消息有URL链接)”的功能是一项常见的需求。这样的功能可以让用户在浏览网站时,实时接收并交互与网站内容相关的通知,提升用户的参与...

    asp.net弹出消息框 类似msn的消息框

    在ASP.NET开发中,有时我们需要实现一种类似MSN即时通讯软件中的消息提示功能,为用户提供直观、友好的交互体验。标题和描述中提到的"asp.net弹出消息框 类似msn的消息框"实际上是在指如何在网页上创建一个模仿MSN...

    js应用的短消息提醒,类似QQ/MSN

    在本主题中,我们聚焦于如何使用JavaScript实现类似QQ或MSN的消息提醒功能,这涉及到实时通信、UI设计以及用户交互等多个方面的知识。 首先,实现这种消息提醒功能的核心技术是Websocket。Websocket是一种在客户端...

    类似QQ,MSN,邮箱右下角消息提示,定时访问数据库。

    标题中的“类似QQ,MSN,邮箱右下角消息提示,定时访问数据库”指的是在软件开发中实现一种即时通讯功能,这种功能类似于我们熟知的QQ、MSN(现已被Skype取代)以及电子邮件系统中的消息通知机制。它涉及到客户端的...

    asp.net类似QQ,MSN,邮箱右下角消息提示,定时访问数据库。

    在ASP.NET中实现类似QQ、MSN或邮箱右下角的消息提示功能,主要是通过实时更新用户界面来提供即时反馈,这通常涉及到AJAX技术、Web Socket、SignalR等实时通信技术。 首先,我们要理解这个功能的核心需求:当有新...

    Ajax弹出提示仿QQ,MSN.rar

    标题中的"Ajax弹出提示仿QQ,MSN"指的是使用Ajax技术来实现类似QQ和MSN的实时消息提示功能。Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个网页的情况下,能够更新部分网页内容的技术。这种技术使得...

    制作 MSN、QQ 的消息提示窗口

    在IT领域,创建类似MSN和QQ的消息提示窗口是一项常见的任务,尤其在开发即时通讯软件时。这些提示窗口通常用于通知用户收到新消息或其他重要事件。本文将深入探讨如何实现这样的功能,以帮助开发者理解其背后的原理...

    仿qq,MSN页面js提示

    "qq提示"和"msn提示"代表了两种不同的风格,它们都是即时通讯软件常见的用户界面元素,而"js"则表明实现这些提示效果主要依赖JavaScript,这是一种广泛用于网页动态效果的脚本语言。JavaScript允许开发者在不刷新...

    VS2010下ASPNET类似于QQ的消息提示(AJAX)

    在本文中,我们将深入探讨如何在Visual Studio 2010环境下使用ASP.NET实现一个类似于QQ的消息提示功能,该功能采用AJAX技术实现无刷新效果。我们还将关注EeekSoft.Web.PopupWin.dll库在这一过程中的作用。 首先,...

    商业编程-源码-制作 MSN、QQ 的消息提示窗口.zip

    这个压缩包"商业编程-源码-制作 MSN、QQ 的消息提示窗口.zip"显然包含了创建类似MSN和QQ的消息提示窗口的源代码。这类窗口通常用于应用程序中显示通知、警告或者对话,是用户交互的重要组成部分。以下是对这个主题的...

    MSN,QQ气泡提示

    综上所述,"MSN,QQ气泡提示"是一个关于用户界面设计、通知机制实现和编程技术的综合主题,涵盖了多种IT技术和设计理念。通过提供的示例,开发者可以学习到如何在自己的项目中创建类似的高效通知功能。

Global site tag (gtag.js) - Google Analytics