原生js实现弹窗消息动画


Posted in Javascript onNovember 20, 2020

本文实例为大家分享了js实现弹窗消息的具体代码,供大家参考,具体内容如下

效果图

原生js实现弹窗消息动画

代码

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>动画消息弹窗</title>
</head>
<style>
 .message {
  -webkit-box-sizing: border-box;
    box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: rgba(0, 0, 0, 0.85);
  font-size: 14px;
  font-variant: tabular-nums;
  line-height: 1.5715;
  list-style: none;
  -webkit-font-feature-settings: 'tnum';
    font-feature-settings: 'tnum';
  position: fixed;
  top: 8px;
  left: 0;
  z-index: 1010;
  width: 100%;
  pointer-events: none;
 }

 .message-notice {
  padding: 8px;
  text-align: center;

  -webkit-animation-name: MessageMoveOut;
  animation-name: MessageMoveOut;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
 }

 .message-content {
  color: #52c41a;
  display: inline-block;
  padding: 10px 16px;
  background: #fff;
  border-radius: 2px;
  -webkit-box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
    box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
  pointer-events: all;
 }

 @-webkit-keyframes MessageMoveOut {
  0% {
   max-height: 0;
   padding: 0;
   opacity: 0;
  }
  100% {
   max-height: 150px;
   padding: 8px;
   opacity: 1;
  }
 }
 @keyframes MessageMoveOut {
  0% {
   max-height: 0;
   padding: 0;
   opacity: 0;
  }
  100% {
   max-height: 150px;
   padding: 8px;
   opacity: 1;
  }
 }
</style>
<body style="text-align: center;">
 <div style="margin: 100px 500px;text-align: right;">
  <a href="#" rel="external nofollow" onclick="handleMessage()">点击弹窗</a>
 </div>

 <div class="message" id="message"></div>

 <script>
  const msg = "我是弹框消息";
  // 弹窗消息
  function handleMessage(message = msg) {
   const parentDiv = document.createElement("div");
   const div = document.createElement("div");
   div.className = "message-content";
   div.innerHTML = message;
   parentDiv.appendChild(div);
   parentDiv.className = "message-notice";
   document.getElementById("message").appendChild(parentDiv);

   setTimeout(() => {
    parentDiv.remove();
   }, 2000);
  }
 </script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一直复略了的一个问题,关于表单重复提交
Feb 15 Javascript
JS保存和删除cookie操作 判断cookie是否存在
Nov 13 Javascript
javascript动态添加、修改、删除对象的属性与方法详解
Jan 27 Javascript
javascript检查某个元素在数组中的索引值
Mar 30 Javascript
用原生JS对AJAX做简单封装的实例代码
Jul 13 Javascript
详谈js遍历集合(Array,Map,Set)
Apr 06 Javascript
jQuery实现倒计时功能 jQuery实现计时器功能
Sep 19 jQuery
js中let和var定义变量的区别
Feb 08 Javascript
Vue一次性简洁明了引入所有公共组件的方法
Nov 28 Javascript
react组件从搭建脚手架到在npm发布的步骤实现
Jan 09 Javascript
JS实现数组删除指定元素功能示例
Jun 05 Javascript
解决echarts数据二次渲染不成功的问题
Jul 20 Javascript
js实现限定区域范围拖拉拽效果
Nov 20 #Javascript
vue自定义插件封装,实现简易的elementUi的Message和MessageBox的示例
Nov 20 #Vue.js
详解vue 组件注册
Nov 20 #Vue.js
JavaScript 防抖和节流遇见的奇怪问题及解决
Nov 20 #Javascript
JavaScript 异步时序问题
Nov 20 #Javascript
JavaScript实现音乐导航效果
Nov 19 #Javascript
JavaScript实现无限轮播效果
Nov 19 #Javascript
You might like
Nigma vs Alliance BO5 第五场2.14
2021/03/10 DOTA
Jquery跨域获得Json时invalid label错误的解决办法
2011/01/11 Javascript
js通过八个点 拖动改变div大小的实现方法
2014/03/05 Javascript
Javascript设计模式之观察者模式的多个实现版本实例
2015/03/03 Javascript
微信小程序 数据访问实例详解
2016/10/08 Javascript
js图片延迟加载(Lazyload)三种实现方式
2017/03/01 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图的组合双轴图效果示例【附demo源码下载】
2017/03/09 Javascript
vue.js选中动态绑定的radio的指定项
2017/06/02 Javascript
解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题
2017/06/05 Javascript
jquery实现下拉菜单的手风琴效果
2017/07/23 jQuery
浅谈angular2 组件的生命周期钩子
2017/08/12 Javascript
详解Js中的模块化是如何实现的
2017/10/18 Javascript
基于JavaScript实现简单的音频播放功能
2018/01/07 Javascript
vue radio单选框,获取当前项(每一项)的value值操作
2020/09/10 Javascript
[47:45]Liquid vs OG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python_LDA实现方法详解
2017/10/25 Python
对python中使用requests模块参数编码的不同处理方法
2018/05/18 Python
django从请求到响应的过程深入讲解
2018/08/01 Python
python组合无重复三位数的实例
2018/11/13 Python
pygame游戏之旅 计算游戏中躲过的障碍数量
2018/11/20 Python
pycharm访问mysql数据库的方法步骤
2019/06/18 Python
用Python识别人脸,人种等各种信息
2019/07/15 Python
Python网络爬虫信息提取mooc代码实例
2020/03/06 Python
美国时装品牌:Nautica(诺帝卡)
2016/08/28 全球购物
Ariat官网:美国马靴和服装品牌
2019/12/16 全球购物
建筑工程实习自我鉴定
2013/09/19 职场文书
国税会议欢迎词
2014/01/16 职场文书
《忆江南》教学反思
2014/04/07 职场文书
危爆物品安全大检查大整治工作方案
2014/05/03 职场文书
法律专业自荐信
2014/06/03 职场文书
班级学雷锋活动总结
2014/06/26 职场文书
法学专业求职信范文
2015/03/19 职场文书
给老师的保证书怎么写
2015/05/09 职场文书
污水处理保证书
2015/05/09 职场文书
何玥事迹观后感
2015/06/16 职场文书
Nginx内网单机反向代理的实现
2021/11/07 Servers