JS封装的模仿qq右下角消息弹窗功能示例


Posted in Javascript onAugust 22, 2018

本文实例讲述了JS封装的模仿qq右下角消息弹窗功能。分享给大家供大家参考,具体如下:

在我们的日常开发中,或者生活中,经常需要用到弹出窗。这里我们就用js模拟一下qq消息一样的弹出窗。

直接贴代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
<title>3water.com javaScript实现网页右下角弹出窗口代码</title>
</head>
<body>
<script type="text/javascript">
var ShowMsg={
  title:'提示',
  content:'模拟qq弹出框消息提醒',
  width:'300px',
  height:'100px',
  setTitle:function(value){
    this.title=value;
  },
  setContent:function(value){
    this.content=value;
  },
  getTitle:function(){
    return this.title;
  },
  getContent:function(){
    return this.content;
  },
  show:function(){
    //弹窗div
    var _winPopDiv = document.createElement('div');
    _winPopDiv.id="_winPopDiv";
    _winPopDiv.style.cssText = 'width:300px; position:absolute; right:0; bottom:0; border:1px solid #666; margin:0; padding:1px; overflow:hidden; display:block;';
    //消息标题div
    var _titleDiv= document.createElement('div');
    _titleDiv.id="_titleDiv";
    _titleDiv.innerHTML=this.getTitle();
    _titleDiv.style.cssText = 'width:100%; height:22px; line-height:20px; background:#FFCC00; font-weight:bold; text-align:left; font-size:14px;';
    _winPopDiv.appendChild(_titleDiv);
    //关闭消息按钮span
    var _closeSpan= document.createElement('span');
    _closeSpan.id="_closeSpan";
    _closeSpan.innerHTML="X";
    _closeSpan.style.cssText = 'position:absolute; right:4px; top:-1px; color:#FFF; cursor:pointer;font-size:14px;';
    _titleDiv.appendChild(_closeSpan);
    //内容div
    var _conDiv= document.createElement('div');
    _conDiv.id="_conDiv";
    _conDiv.style.cssText = 'width:100%; height:110px; line-height:80px; font-weight:bold; font-size:12px; color:#FF0000; text-decoration:underline; text-align:center;';
    _conDiv.innerHTML=this.getContent();
    _winPopDiv.appendChild(_conDiv);
    document.body.appendChild(_winPopDiv);
    //关闭span绑定事件
    var closeDiv = document.getElementById("_closeSpan");
    if(closeDiv.addEventListener){
    closeDiv.addEventListener("click",function(e){
      if (window.event != undefined) {
      window.event.cancelBubble = true;
      } else if (e.stopPropagation) {
      e.stopPropagation();
      }
      document.getElementById('_winPopDiv').style.cssText="display:none;";
    },false);
    }else if(closeDiv.attachEvent){
    closeDiv.attachEvent("onclick",function(e){
      if (window.event != undefined) {
      window.event.cancelBubble = true;
      } else if (e.stopPropagation) {
      e.stopPropagation();
      }
      document.getElementById('_winPopDiv').style.cssText="display:none;";
    });
    }
  }
};
ShowMsg.show();
</script>
</body>
</html>

这里使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun,测试可得到如下运行效果:

JS封装的模仿qq右下角消息弹窗功能示例

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
bgsound 背景音乐 的一些常用方法及特殊用法小结
May 11 Javascript
JavaScript中双叹号!!作用示例介绍
Sep 21 Javascript
javascript实现dom动态创建省市纵向列表菜单的方法
May 14 Javascript
javascript运动框架用法实例分析(实现放大与缩小效果)
Jan 08 Javascript
快速移动鼠标触发问题及解决方法(ECharts外部调用保存为图片操作及工作流接线mouseenter和mouseleave)
Aug 29 Javascript
Javascript获取background属性中url的值
Oct 17 Javascript
input输入密码变黑点密文的实现方法
Jan 09 Javascript
微信小程序实现自定义modal弹窗封装的方法
Jun 15 Javascript
记一次webapck4 配置文件无效的解决历程
Sep 19 Javascript
JavaScript 继承 封装 多态实现及原理详解
Jul 29 Javascript
Vue通过配置WebSocket并实现群聊功能
Dec 31 Javascript
js中!和!!的区别与用法
May 09 Javascript
当vue路由变化时,改变导航栏的样式方法
Aug 22 #Javascript
element-ui 设置菜单栏展开的方法
Aug 22 #Javascript
详解vue-cli脚手架中webpack配置方法
Aug 22 #Javascript
element-ui使用导航栏跳转路由的用法详解
Aug 22 #Javascript
详解微信小程序canvas圆角矩形的绘制的方法
Aug 22 #Javascript
解决element UI 自定义传参的问题
Aug 22 #Javascript
微信小程序chooseImage的用法(从本地相册选择图片或使用相机拍照)
Aug 22 #Javascript
You might like
php 多线程上下文中安全写文件实现代码
2009/12/28 PHP
php中PDO方式实现数据库的增删改查
2015/05/17 PHP
Yii2 rbac权限控制之菜单menu实例教程
2016/04/28 PHP
PHP 读取大文件并显示的简单实例(推荐)
2016/08/12 PHP
php多线程并发实现方法
2016/09/30 PHP
PHP集成环境XAMPP的安装与配置
2018/11/13 PHP
刷新页面实现方式总结(HTML,ASP,JS)
2008/11/13 Javascript
JavaScript传递变量: 值传递?引用传递?
2011/02/22 Javascript
js实时监听文本框状态的方法
2011/04/26 Javascript
JSON语法五大要素图文介绍
2012/12/04 Javascript
js用闭包遍历树状数组的方法
2014/03/19 Javascript
javascript屏蔽右键代码
2014/05/15 Javascript
jquery实现人性化的有选择性禁用鼠标右键
2014/06/30 Javascript
使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法
2016/07/07 Javascript
分享JavaScript监听全部Ajax请求事件的方法
2016/08/28 Javascript
AngularJS中如何使用echart插件示例详解
2016/10/26 Javascript
jQuery中用on绑定事件时需注意的事项
2017/03/19 Javascript
mac上node.js环境的安装测试
2017/07/03 Javascript
jQuery实现上传图片前预览效果功能
2017/08/03 jQuery
详解小程序缓存插件(mrc)
2018/08/17 Javascript
微信小程序template模版的使用方法
2019/04/13 Javascript
vue spa应用中的路由缓存问题与解决方案
2019/05/31 Javascript
js blob类型url的视频下载问题的解决
2019/11/29 Javascript
Vue Element校验validate的实例
2020/09/21 Javascript
python进阶教程之函数参数的多种传递方法
2014/08/30 Python
Python Selenium Cookie 绕过验证码实现登录示例代码
2018/04/10 Python
python3实现zabbix告警推送钉钉的示例
2019/02/20 Python
Django怎么在admin后台注册数据库表
2020/11/14 Python
HTML5 script元素async、defer异步加载使用介绍
2013/08/23 HTML / CSS
精选奢华:THE LIST
2019/09/05 全球购物
如何设定的weblogic的热启动模式(开发模式)与产品发布模式
2012/09/08 面试题
民族团结演讲稿范文
2014/08/27 职场文书
2014财务年度工作总结
2014/11/11 职场文书
法制教育主题班会
2015/08/13 职场文书
导游词之无锡唐城
2019/12/12 职场文书
CSS三大特性继承性、层叠性和优先级详解
2022/01/18 HTML / CSS