作者:旺仔牛叉糖 | 来源:互联网 | 2023-05-19 14:48
web前端|H5教程HTML5,对话气泡,动画web前端-H5教程本篇文章给大家介绍一下使用HTML5实现对话气泡点击动画的方法天高云淡秒赞3.0源码,vscode缩小屏幕,ubu
web前端|H5教程
HTML5,对话气泡,动画
web前端-H5教程
本篇文章给大家介绍一下使用HTML5实现对话气泡点击动画的方法
天高云淡秒赞3.0源码,vscode缩小屏幕,ubuntu更改root密码,tomcat jk,安卓sqlite查询数据,学网页设计学费多少钱,cms数据库设计,购买国外服务器,wordpress回到顶部插件,插件化前端框架,起点爬虫,php是啥,韩国seo,springboot 内置,织梦标签,游戏充值网站模板,html5网页翻页电子书效果,微信公众号网页版模板下载,jquery ui 后台模板,页面加载动画原理,源代码跟踪管理系统,有约束优化问题的matlab程序二维lzw
需求围住神经猫安卓源码,vscode 连服务器,ubuntu鼠标指针,tomcat模版,sqlite日志文件,网页设计填充侧面,阿里云+万台服务器,jquery 插件 图片,前端框架fr,爬虫与ai,php 音频,seo职位要求,springboot架构转换,属地网站管理系统,调查问卷 网页,照片展示网站模板,如何升级网站后台,html5手机端页面跳转,php 投票管理系统,家教程序lzw
还是要先把需求拿出来。 要求:
bootstrap经典案例源码,vscode masm,ubuntu 列出文件,搜索tomcat,照片存入sqlite,域名dns 服务器,jquery双日期插件,前端js框架组合,php爬虫工程师,php省市区,seo排名培训学校,网站备份插件,网页设计基础模板,网站客服中心模板,如何图片跳转页面显示内容,人事管理系统论文,网页程序招聘lzw
然后还是把完成图拿出来,就是做成下面这个样子:
思路
首先要制作气泡其次使用css制作动画添加计时器完成点击动画和计时动画
实现
半透明气泡制作
html结构
闭上眼睛,用心祈祷,努力的人有回报
less(rem规则自己换算,也可以使用px)
.select-toast{ position: absolute; //确定对话的位置 top: 3.4rem; right: 0.2rem; width: 1.45rem; //确定宽度,高度由文字撑开 padding: 0.18rem; //确定文字距离对话框外部的距离 line-height: 0.4rem; //确定文字的行高 color: #d06e5a; //文字颜色 background-color: rgba(255,255,255,0.85); //背景色,半透明 border-radius: 0.2rem; //对话框圆角 opacity: 0; //初始情况透明度为0 &::before{ //三角的制作 content:""; //伪元素必需 width: 0; //本身的宽高为0 height: 0; border-width: 0.2rem; //三角形的高 border-color:transparent rgba(255,255,255,0.85) transparent transparent; //角朝左的三角形 border-style: solid; //边框为实心的 position: absolute; //三角的位置 left: -0.4rem; top: 0.4rem; }}
对话框css动画
.select-toast.toastAni{ -webkit-animation: toast 4s; //对话框的动画 animation: toast 4s;}//对话框的动画定义@-webkit-keyframes toast { 8%{ opacity: 0.8; -webkit-transform: scale(0.8); transform: scale(0.8); } 16%{ opacity: 1; -webkit-transform: scale(1.1); transform: scale(1.1); } 24%{ opacity: 1; -webkit-transform: scale(0.95); transform: scale(0.95); } 32%{ opacity: 1; -webkit-transform: scale(1); transform: scale(1); } 82.5%{ opacity: 1; -webkit-transform: scale(1); transform: scale(1); } 100%{ opacity: 0; }}@keyframes toast { 8%{ opacity: 0.8; -webkit-transform: scale(0.8); transform: scale(0.8); } 16%{ opacity: 1; -webkit-transform: scale(1.1); transform: scale(1.1); } 24%{ opacity: 1; -webkit-transform: scale(0.95); transform: scale(0.95); } 32%{ opacity: 1; -webkit-transform: scale(1); transform: scale(1); } 82.5%{ opacity: 1; -webkit-transform: scale(1); transform: scale(1); } 100%{ opacity: 0; }}
添加计时器完成点击动画和计时动画
首先要确定一个点击的区域,这个区域一点击,就会触发气泡出现
//随机出现的话术数组var toastText = [ "哈哈,早安", "早上吃饭了吗?", "好好学习,天天向上", "闭上眼睛,用心祈祷,努力的人有回报", "记得早点睡觉",]//计时器变量var fishAlert;//弹出功能函数function textShow(aniTime,spaceTime){ //清空计时器 clearInterval(fishAlert); //解绑事件 $("#fish-click").off("tap"); //设置显示的文本,随机生成0-4的整数 var random = Math.floor(Math.random() * 5); //展示随机生成的文本 $("#select-toast").html(toastText[random]).addClass("toastAni"); //4000秒后去掉动画 setTimeout(function(){ //去掉动画样式 $("#select-toast").removeClass("toastAni"); //重新绑定事件 $("#fish-click").off("tap").on("tap",function(){ textShow(4000,8000); }) //添加8秒计时器 fishAlert = setInterval(function(){ //随机生成0-4的整数 var random = Math.floor(Math.random() * 5); //添加动画 $("#select-toast").html(toastText[random]).addClass("toastAni"); setTimeout(function(){//动画结束后移除动画$("#select-toast").removeClass("toastAni"); },aniTime) },spaceTime); },aniTime);}
$(document).ready(function(){ //动画时间4000ms,间隔时间8000ms textShow(4000,8000);})