JavaScript封装模拟QQ右下角消息弹窗功能示例
本文介绍如何使用JavaScript封装一个模仿QQ样式的右下角消息弹窗组件。通过定义ShowMsg对象管理标题、内容及尺寸,结合DOM操作实现弹窗的显示与隐藏逻辑,并提供在线代码运行工具供开发者测试效果。
JavaScript模拟QQ消息弹窗实现
本文详细介绍了一种使用JavaScript封装的模拟QQ风格右下角消息弹窗的实现方法,旨在为开发者提供参考。
在Web开发或日常应用中,弹出窗口是常见的交互形式。本节将演示如何利用JavaScript代码模拟类似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>www.jb51.net 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.jb51.net/code/HtmlJsRun)对代码进行测试,运行结果如下所示:

若需进一步了解JavaScript相关知识,建议参考本站专题:《JavaScript窗口操作与技巧汇总》、《JavaScript事件相关操作与技巧大全》、《JavaScript页面元素操作技巧总结》、《JavaScript操作DOM技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》及《JavaScript数学运算用法总结》。
希望上述关于JavaScript程序设计的分享能对您的开发工作有所帮助。
JS怎么实现页面强制刷新
2026-11-05 14:53:38
点击JS链接直接运行不下载?前端实现.js文件强制下载的三种方法
2026-11-05 12:12:23
怎么封装一个通用的JS创建元素辅助函数
2026-11-05 11:41:41
Swiper.js 怎么监听滑动结束并获取当前索引
2026-11-05 10:57:15
HTML、CSS和JS的关系:Web前端三件套怎么协作
2026-11-04 15:41:40
