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 相关文章推荐
jquery JSON的解析方式
Jul 25 Javascript
node.js中的fs.mkdir方法使用说明
Dec 17 Javascript
JS获取时间的方法
Jan 21 Javascript
JavaScript实现判断图片是否加载完成的3种方法整理
Mar 13 Javascript
JS图片等比例缩放方法完整示例
Aug 03 Javascript
Vue 固定头 固定列 点击表头可排序的表格组件
Nov 25 Javascript
使用JavaScript实现链表的数据结构的代码
Aug 02 Javascript
JS基于for语句编写的九九乘法表示例
Jan 04 Javascript
vue2 中二级路由高亮问题及配置方法
Jun 10 Javascript
解决vuecli3中img src 的引入问题
Aug 04 Javascript
JavaScript实现与web通信的方法详解
Aug 07 Javascript
JavaScript实现简单的音乐播放器
Aug 14 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
真正面向对象编程:PHP5.01发布
2006/10/09 PHP
PHP生成等比缩略图类和自定义函数分享
2014/06/25 PHP
Jquery 表格合并的问题分享
2011/09/17 Javascript
自己写的兼容ie和ff的在线文本编辑器类似ewebeditor
2012/12/12 Javascript
禁止IE用右键的JS代码
2013/12/30 Javascript
jQuery异步验证用户名是否存在示例代码
2014/05/21 Javascript
jquery中使用循环下拉菜单示例代码
2014/09/24 Javascript
jquery淡入淡出效果简单实例
2016/01/14 Javascript
JavaScript知识点总结之如何提高性能
2016/01/15 Javascript
去除html代码里面的script正则方法
2016/05/19 Javascript
bootstrap table 多选框分页保留示例代码
2017/03/08 Javascript
JS实现css hover操作的方法示例
2017/04/07 Javascript
angular directive的简单使用总结
2017/05/24 Javascript
JS动态修改网页body的背景色实例代码
2017/10/07 Javascript
js导出Excel表格超出26位英文字符的解决方法ES6
2017/11/15 Javascript
vue-router+nginx 非根路径配置方法
2018/06/30 Javascript
Vue.js实现双向数据绑定方法(表单自动赋值、表单自动取值)
2018/08/27 Javascript
使用Layer组件弹出多个对话框(非嵌套)与关闭及刷新的例子
2019/09/25 Javascript
Python创建文件和追加文件内容实例
2014/10/21 Python
Python的Flask框架中@app.route的用法教程
2015/03/31 Python
python显示生日是星期几的方法
2015/05/27 Python
python获取程序执行文件路径的方法(推荐)
2018/04/26 Python
欧洲顶级体育电子商务网站:SportsShoes.com
2018/03/27 全球购物
日本航空官方网站:JAL
2019/06/19 全球购物
请介绍一下Ant
2016/07/22 面试题
什么是反射
2012/03/17 面试题
金鑫耀Java笔试题
2014/09/06 面试题
怎样写留学自荐信
2013/11/11 职场文书
英文简历中的自我评价用语
2013/12/09 职场文书
土建专业大学生自荐信范文
2014/04/09 职场文书
给校长的建议书200字
2014/05/16 职场文书
村主任群众路线教育实践活动个人对照检查材料思想汇报
2014/10/01 职场文书
农村党员学习党的群众路线教育实践活动心得体会
2014/11/04 职场文书
2014年学校体育工作总结
2014/12/08 职场文书
高校教师个人工作总结2014
2014/12/17 职场文书
2017年大学生寒假社会实践活动总结
2016/04/06 职场文书