点击页面弹出文字动画效果

introduce

在博客园查询资料的时候,经常会有一些小的惊喜,比如点击页面,会弹出一些文字,向上浮动,然后消失,显得无聊,我就做了一个demo

tool

  1. 首推vscode,带上插件真的是飞一般的感觉
  2. chrome,浏览器自带的审查元素是我见过最棒的。
  3. js原生函数以及css3动画函数

thought

  1. 在页面绑定函数,点击页面触发函数。
  2. 取得当前点击的位置,采用event.page取得(取得的是文档的左边缘和上边缘)
  3. 把所有想在页面展示的字符串放到数组里。判断当前索引的是否为空。不为空就在页面创建一个元素,内容为字符串,设置位置为鼠标点击的位置。为空则索引归零。每次点击成功后索引+1;

index.html

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><link rel="stylesheet" href="./index.css"><link rel="stylesheet" href="./animote.css"><title>text-animation</title>
</head><body class="body"><div class="center"><p>你的眼中有万千星辰</p><p>左眼一千</p><p>右眼一万</p></div><script src="./index.js"></script>
</body></html>

index.css

*{padding: 0;margin: 0;
}
.body {width: 100%;height: 100%;/* text-align: center; *//* align-items: center;justify-content: center;display: flex */
}
.center {position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);text-align: center
}

animote.css

.text_popup{animation :textPopUp 1s;color: blue;user-select: none;white-space: nowrap;position: absolute;z-index: 999;
}
@keyframes textPopUp {0%, 100% {opacity: 0;}10% {opacity: 1;}100% {transform: translateY(-50px);}
}

index.js

var showText = function(arr, option) {if (!arr || arr.length == 0) {return ;}var index = 0;document.documentElement.addEventListener("click", function(event) {var x = event.pageX;console.log(x)var y = event.pageY;var text = document.createElement("span");text.setAttribute("class", 'text_popup');this.appendChild(text);if (arr[index]) {text.innerHTML = arr[index];} else {index = 0;text.innerHTML = arr[index];}text.addEventListener("animationend", function() {text.parentNode.removeChild(text);})text.style.left = (x - text.clientWidth / 2) + "px";text.style.top = (y - text.clientHeight / 2) + "px";index ++ })
}showText(['行也欢喜','停也欢喜','眉目带笑','醉如春风','浮生如梦','岁月如舟'])

writer&contact

Jontyy jontyy@163.com

github

https://github.com/YJD199798/jontyy-textanimation.git

点击页面弹出文字动画效果相关推荐

  1. Android高效率实现弹出带动画效果的对话框,仿照微信对话框效果

    转载请注明出处: http://blog.csdn.net/jakeyangchina/article/details/53423453 看到很多app页面里都有弹出对话框效果,今天使用PopupWi ...

  2. Js实现点击超链接弹出层,效果仿Discuz登录!

    主要应用到的是dispaly:none 和 dispaly:block;来控制实现的: <a id="link" href="#" onclick=&qu ...

  3. [QT]实现点击按钮弹出图片的效果

    点击按钮弹出图片的实现 void MainWindow::btnTest() {QLabel* labelImage = new QLabel(this, Qt::Dialog |Qt::Window ...

  4. 点击输入框弹出文字html,jQuery实现点击文本框弹出热门标签的提示效果

    jQuery实现点击文本框弹出热门标签的提示示例_网页代码站 body { font-size:12px;font-family:Arial; } #m_tagsItem { background:# ...

  5. vue中怎样实现弹出层动画效果?由上而下渐渐显示---封装成复用组件

    子组件: <template><div class="home"><!-- 首先将要过渡的元素用transition包裹,并设置过渡的name --& ...

  6. vue中怎样实现弹出层动画效果?由上而下渐渐显示

    1 <template><div class="home"><!-- 首先将要过渡的元素用transition包裹,并设置过渡的name --> ...

  7. php点击弹出文字代码,js实现鼠标点击页面弹出自定义文字效果

    本文实例为大家分享了js鼠标点击页面弹出文字的具体代码,供大家参考,具体内容如下 效果: 实现代码: (function(e){ // 点击事件触发生生元素等一系列动作的初始状态 var bombFl ...

  8. 点击页面出现富强、民主这类文字动画效果

    一.文字动画效果预览 点击本页面任意位置即可!因为动画效果用的是CSS3 animation,因此,IE9及其以下浏览器无效果. 二.如何在自己网站上添加类似效果? 复制并粘贴下面的内联CSS代码到页 ...

  9. html点击图片弹出模态框,JS实现图片点击后出现模态框效果

    JS实现图片点击后出现模态框效果 2019-01-07 编程之家 https://www.jb51.cc 编程之家收集整理的这篇文章主要介绍了JS实现图片点击后出现模态框效果,编程之家小编觉得挺不错的 ...

最新文章

  1. VTK:PolyData之PointLocator
  2. 天池 在线编程 最大子树(自底向上)
  3. python调用github_Python调用GithubAPI并进行初步的数据分析
  4. Centos下安装X Window+GNOME Desktop+FreeNX
  5. Linux 2.6中基于Sysenter的系统调用机制
  6. vue.3.0 dom赋值_Vue 3.0 快速入门
  7. 物联网芯片的协议之Lora及其调制
  8. pe制作linux硬盘的镜像文件_制作一个64M的U盘启动盘(mini linux + winpe +dos toolbox)
  9. 远程桌面的端口3389及关闭此端口
  10. android开题报告模板下载,毕业设计开题报告模板
  11. 求斐波那契数列的特征方程和通项公式
  12. 汉字转拼音多音字java_汉字转拼音多音字解决方案 搜索引擎分词细胞词库更新 搜狗词库提取TXT PHP高性能输出UNICODE正则汉字列表...
  13. Plotting data
  14. 机票网络售票模拟系统(嵌入式部分)
  15. KVM基于Web部署虚拟主机
  16. Eclipse插件版本
  17. 千万不能笑,千万别笑,不能笑!我真的不是有意逗你笑的~
  18. ChinaSoft 论坛巡礼 | 软件通识教育论坛
  19. 数据库—查询(有无回调函数)
  20. 1.数据挖掘概念笔记——引论

热门文章

  1. scrapy pipeline 管道 (图片,文件)
  2. IOT嵌入式物联网----C语言基本数据类型
  3. java hincrby_挖坑记录-redistemplate hincrby
  4. 下载量已超越千万的爆红游戏2048(同名小3传奇、1024)源代码解密和下载(第一篇)
  5. IDT gblock synthetic fragments
  6. java jsp标签_java – JSP标签scriptlet.如何启用scriptlet?
  7. 347-linux虚拟地址空间
  8. 【T+】T+cloud更换激活手机号(更换企业管理员)
  9. phalapi使用redis做MQ队列
  10. 24.GRASP模式