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 相关文章推荐
js 鼠标拖动对象 可让任何div实现拖动效果
Nov 09 Javascript
Javascript常考语句107条收集
Mar 09 Javascript
有道JavaScript监听浏览器的问题
Jun 23 Javascript
jquery isType() 类型判断代码
Feb 14 Javascript
JS 对输入框进行限制(常用的都有)
Jul 30 Javascript
一个通过script自定义属性传递配置参数的方法
Sep 15 Javascript
JS实现的简单四则运算计算器功能示例
Sep 27 Javascript
canvas轨迹回放功能实现
Dec 20 Javascript
小程序文字跑马灯效果
Dec 28 Javascript
js中的reduce()函数讲解
Jan 18 Javascript
Nuxt.js 数据双向绑定的实现
Feb 17 Javascript
解决vue-pdf查看pdf文件及打印乱码的问题
Nov 04 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
用文本文件制作留言板提示(上)
2006/10/09 PHP
php+mysql开源XNA 聚合程序发布 下载
2007/07/13 PHP
php获取bing每日壁纸示例分享
2014/02/25 PHP
关于PHP求解三数之和问题详析
2020/11/09 PHP
Jquery Ajax学习实例7 Ajax所有过程事件分析示例
2010/03/23 Javascript
JS继承--原型链继承和类式继承
2013/04/08 Javascript
JavaScript实现页面实时显示当前时间的简单实例
2013/07/20 Javascript
关闭浏览器时提示onbeforeunload事件
2013/12/25 Javascript
AngularJS语法详解(续)
2015/01/23 Javascript
javascript实用方法总结
2015/02/06 Javascript
jQuery菜单实例(全选,反选,取消)
2017/08/28 jQuery
基于Vue2x的图片预览插件的示例代码
2018/05/14 Javascript
layer插件select选中默认值的方法
2018/08/14 Javascript
微信小程序wxml列表渲染原理解析
2019/11/27 Javascript
AI小程序之语音听写来了,十分钟掌握百度大脑语音听写全攻略
2020/03/13 Javascript
Vue父子之间值传递的实例教程
2020/07/02 Javascript
vue项目中微信登录的实现操作
2020/09/08 Javascript
python web框架学习笔记
2016/05/03 Python
Python爬取APP下载链接的实现方法
2016/09/30 Python
基于python爬虫数据处理(详解)
2017/06/10 Python
python与C互相调用的方法详解
2017/07/14 Python
python中requests库session对象的妙用详解
2017/10/30 Python
解决python ogr shp字段写入中文乱码的问题
2018/12/31 Python
详解Python利用random生成一个列表内的随机数
2019/08/21 Python
Python通过文本和图片生成词云图
2020/05/21 Python
Python类及获取对象属性方法解析
2020/06/15 Python
浅谈keras中Dropout在预测过程中是否仍要起作用
2020/07/09 Python
香港莎莎官网Sasa.com:亚洲著名国际化妆品商城
2019/11/10 全球购物
澳大利亚人信任的清洁平台,您的私人管家:Jarvis
2020/12/25 全球购物
酷瑞网络科技面试题
2012/03/30 面试题
电厂厂长岗位职责
2014/01/02 职场文书
总经理助理的职责
2014/03/14 职场文书
大学毕业生自我评价
2015/03/02 职场文书
在职证明格式样本
2015/06/15 职场文书
《西门豹》教学反思
2016/02/23 职场文书
MySQL中order by的使用详情
2021/11/17 MySQL