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 相关文章推荐
使用Microsoft Ajax Minifier减小JavaScript文件大小的方法
Apr 01 Javascript
innerHTML属性,outerHTML属性,textContent属性,innerText属性区别详解
Mar 13 Javascript
使用JS轻松实现ionic调用键盘搜索功能(超实用)
Sep 06 Javascript
jQuery使用animate实现ul列表项相互飘动效果示例
Sep 16 Javascript
js自定义Tab选项卡效果
Jun 05 Javascript
基于jQuery选择器之表单对象属性筛选选择器的实例
Sep 19 jQuery
vue仿淘宝订单状态的tab切换效果
Jun 23 Javascript
Vue动态获取width的方法
Aug 22 Javascript
vue实现重置表单信息为空的方法
Sep 29 Javascript
ES6中异步对象Promise用法详解
Jul 31 Javascript
Vue 实例事件简单示例
Sep 19 Javascript
js如何验证密码强度
Mar 18 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
Windows IIS PHP 5.2 安装与配置方法
2009/06/08 PHP
php异步多线程swoole用法实例
2014/11/14 PHP
使用Appcan客户端自动更新PHP版本号(全)
2015/07/31 PHP
php生成高清缩略图实例详解
2015/12/07 PHP
PHP下载远程图片并保存到本地方法总结
2016/01/22 PHP
PHP.vs.JAVA
2016/04/29 PHP
PHP实现无限极分类的两种方式示例【递归和引用方式】
2019/03/25 PHP
Javascript MD4
2006/12/20 Javascript
iframe自适应宽度、高度 ie6 7 8,firefox 3.86下测试通过
2010/07/29 Javascript
jquery.pagination.js 无刷新分页实现步骤分享
2012/05/23 Javascript
$.each遍历对象、数组的属性值并进行处理
2014/07/18 Javascript
js怎么覆盖原有方法实现重写
2014/09/04 Javascript
Yii2使用Bootbox插件实现自定义弹窗
2015/04/02 Javascript
JavaScript驾驭网页-CSS与DOM
2016/03/24 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐二)
2016/07/12 Javascript
概述javascript在Google IE中的调试技巧
2016/11/24 Javascript
React中使用collections时key的重要性详解
2017/08/07 Javascript
在AngularJs中设置请求头信息(headers)的方法及不同方法的比较
2018/09/04 Javascript
vue中进行微博分享的实例讲解
2019/10/14 Javascript
[06:07]辉夜杯现场观众互动 “比谁远送显示器”
2015/12/26 DOTA
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
详解Python在七牛云平台的应用(一)
2017/12/05 Python
Python判断一个list中是否包含另一个list全部元素的方法分析
2018/12/24 Python
Django接收自定义http header过程详解
2019/08/23 Python
Jupyter加载文件的实现方法
2020/04/14 Python
英国领先的瓷砖专家:Walls and Floors
2018/04/27 全球购物
美国优质马术服装购买网站:Breeches.com
2019/12/16 全球购物
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
致跳远、跳高运动员广播稿
2014/01/09 职场文书
中文专业学生自我评价范文
2014/02/06 职场文书
更夫岗位责任制
2014/02/11 职场文书
市场部业务员岗位职责
2014/04/02 职场文书
五四青年节比赛演讲稿
2015/03/18 职场文书
写给纪委的违纪检讨书
2015/05/05 职场文书
病假条格式范文
2015/08/17 职场文书
小学四年级班务总结该怎么写?
2019/08/16 职场文书