JavaScript实现右下角弹窗效果代码
3星 · 超过75%的资源 需积分: 9 168 浏览量
更新于2024-09-21
1
收藏 2KB TXT 举报
"JS右下角弹出窗口代码示例"
在网页开发中,有时我们需要在用户界面上实现右下角弹出窗口的功能,用于显示通知、消息或者提示信息。这个资源提供了一段JavaScript和CSS代码,实现了这样一个效果。下面我们将详细解释这段代码的工作原理和关键知识点。
首先,我们来看CSS部分:
```css
body {background:#333333;}
#winpop {
width: 200px;
height: 0px;
position: absolute;
right: 0;
bottom: 0;
border: 1px solid #999999;
margin: 0;
padding: 1px;
overflow: hidden;
display: none;
background: #FFFFFF;
}
#winpop.title {
width: 100%;
height: 20px;
line-height: 20px;
background: #FFCC00;
font-weight: bold;
text-align: center;
font-size: 12px;
}
#winpop.con {
width: 100%;
height: 80px;
line-height: 80px;
font-weight: bold;
font-size: 12px;
color: #FF0000;
text-decoration: underline;
text-align: center;
}
#silu {
font-size: 13px;
color: #999999;
position: absolute;
right: 0;
bottom: 0px;
text-align: right;
text-decoration: underline;
line-height: 22px;
}
.close {
position: absolute;
right: 4px;
top: -1px;
color: #FFFFFF;
cursor: pointer;
}
```
这段CSS定义了弹出窗口的样式。`#winpop` 是弹出窗口的主体,设置为绝对定位在页面的右下角,初始高度为0,通过改变高度实现弹出动画。`.title` 和 `.con` 分别是标题和内容区域,`.close` 是关闭按钮的样式。
接下来是JavaScript部分:
```javascript
function show_pop() {
document.getElementById("winpop").style.display = "block";
timer = setInterval("changeH(4)", 2); // 每0.002秒增加高度
}
function hide_pop() {
timer = setInterval("changeH(-4)", 2); // 每0.002秒减少高度
}
function changeH(addH) {
var MsgPop = document.getElementById("winpop");
var currentHeight = parseInt(MsgPop.style.height);
MsgPop.style.height = (currentHeight + addH) + "px";
}
```
这里定义了三个函数:`show_pop()`、`hide_pop()` 和 `changeH()`。`show_pop()` 函数用于显示弹出窗口,它将`winpop`的`display`属性设为`block`,然后通过`setInterval`定时器调用`changeH()`函数,以每2毫秒增加4像素的高度,创建上升动画效果。`hide_pop()`则相反,通过减少高度来隐藏弹出窗口。`changeH()`函数负责更新`winpop`元素的高度,它获取当前高度并根据传入参数增加或减少高度。
这个弹出窗口的实现方式简单且实用,适用于轻量级的页面通知需求。通过调整CSS样式和JavaScript参数,可以定制不同的弹出效果和交互体验。在实际项目中,可能还需要考虑更多的细节,比如添加关闭按钮的点击事件、防闪烁优化、兼容性处理等。
2020-10-23 上传
2020-06-12 上传
2023-10-19 上传
2024-09-25 上传
2023-03-31 上传
2023-09-24 上传
2023-06-10 上传
2023-09-14 上传
xingxxxing
- 粉丝: 0
- 资源: 3
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码