当前位置:   article > 正文

鼠标点击反馈效果(基于css3动画)_点击鼠标获得反馈的页面

点击鼠标获得反馈的页面

网上多是基于js-setTimeout及setInterval实现的动画效果,此篇基于css3-transition实现。

浮出符号效果:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta http-equiv=Content-Type content="text/html;charset=utf-8">
  5. </head>
  6. <body></body>
  7. <script>
  8. var clickCount = 0;
  9. document.onclick = function(e) {
  10. /**
  11. * 根据鼠标点击坐标初始化dom,通过过渡属性实现动画效果
  12. * dom渲染完成后设置目标偏移位置及目标透明度
  13. * 过渡结束后移除dom
  14. * @author:slzs
  15. */
  16. var symbol = document.createElement("b");
  17. symbol.style.position = "absolute";
  18. symbol.style.left = (e.pageX - 10) + "px";
  19. symbol.style.top = (e.pageY - 15) + "px";
  20. symbol.style.zIndex = 9999;
  21. symbol.style.userSelect = "none"; // 禁止文本被选中,影响美观
  22. symbol.style.fontSize = "18px";
  23. symbol.style.color = `rgb(${Math.floor(Math.random()*256)},${Math.floor(Math.random()*256)},${Math.floor(Math.random()*256)})`; // 随机颜色
  24. symbol.style.transition="all 1.5s";
  25. symbol.addEventListener("transitionend",function(et){ // 动画结束移除dom
  26. if(et.propertyName == "opacity" && et.srcElement.style.opacity==0)
  27. et.srcElement.remove();
  28. });
  29. // 轮换几个预制字符
  30. switch(++clickCount){
  31. case 1:
  32. symbol.innerText = "✔";
  33. break;
  34. case 2:
  35. symbol.innerText = "❤";
  36. break;
  37. default:
  38. symbol.innerText = "☺";
  39. clickCount = 0;
  40. }
  41. document.body.appendChild(symbol);
  42. requestAnimationFrame(()=>{
  43. symbol.style.top = (e.pageY - 100) + "px";
  44. symbol.style.opacity = 0;
  45. });
  46. };
  47. </script>
  48. </html>

 水波纹效果:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta http-equiv=Content-Type content="text/html;charset=utf-8">
  5. </head>
  6. <body></body>
  7. <script>
  8. document.onclick = function(e) {
  9. /**
  10. * 根据鼠标点击坐标初始化dom,通过过渡属性实现动画效果
  11. * dom渲染完成后设置目标偏移位置及目标透明度
  12. * 过渡结束后移除dom
  13. * @author:slzs
  14. */
  15. var symbol = document.createElement("div");
  16. symbol.style.position = "absolute";
  17. symbol.style.left = (e.pageX) + "px";
  18. symbol.style.top = (e.pageY) + "px";
  19. symbol.style.zIndex = 9999;
  20. symbol.style.transition="all 1.5s";
  21. symbol.style.border="1px red solid";
  22. symbol.style.borderColor = `rgb(${Math.floor(Math.random()*256)},${Math.floor(Math.random()*256)},${Math.floor(Math.random()*256)})`; // 随机颜色
  23. symbol.style.borderRadius="100%";
  24. symbol.style.width = "0px";
  25. symbol.style.height = "0px";
  26. symbol.addEventListener("transitionend",function(et){ // 动画结束移除dom
  27. if(et.propertyName == "opacity" && et.srcElement.style.opacity==0)
  28. et.srcElement.remove();
  29. });
  30. document.body.appendChild(symbol);
  31. requestAnimationFrame(()=>{
  32. symbol.style.width = "80px";
  33. symbol.style.margin = "-7px -40px";
  34. symbol.style.height = "14px";
  35. symbol.style.opacity = 0;
  36. });
  37. };
  38. </script>
  39. </html>

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/article/detail/97313
推荐阅读

  • 蓝桥Web应用开发【国赛班】-CSS3新特性【练习一:属性有效性验证】蓝桥Web应用开发-CSS3新特性【练习一:属性有效性验证】练习一:属性有效性验证页面上有一个邮箱输入框,当你的输入满足邮箱格式时,输入框的背景颜色为绿色;当你的输入... [详细]

  • 表单概述 表单信息输入 单行文本输入框密码框文本框 关于在不同浏览器中显示宽度不同的解决问题 关于IE浏览器中默认文本框和密码框显示长度不一的问题 复选框单选按钮 提交按钮重置按钮和普通按钮 图像提交按钮 按钮组合案例 文件选择框及隐... [详细]

  • 前言CSS3边框 1.border-radius圆角边框 2.box-shadow边框阴影 3.border-image边框图像CSS3转换transform属性 1.CSS32D转换总结[HTML]Web前端开发技术21(HTML5、CS... [详细]

  • 前言CSS3动画animationCSS3动画animation子属性设置CSS3多列属性CSS3文本效果 1.文本阴影text-shadow属性 2.文本换行text-wrap属性 3.控制换行word-wrap属性 4.文本溢出text... [详细]

  • 掌握HTML标签基本语法(标题、段落、换行、水平线、文本格式、图像、路径、超链接、音频、视频、注释),能够独立布局文章页HTML5+CSS3+移动web——HTML基础目录一、标签语法HTML的基本框架1.标题标签2. 段落标签3... [详细]

  • html+css+js生日快乐网站模板(多页面功能版本+音乐)❤520/表白/七夕情人节/求婚❤专用炫酷动画网页的源代码HTML5+CSS3+JS)程序员爱情❤520/表白/七夕情人节/求婚❤专用html5+css3+js生日快乐网站模板... [详细]

  • 【实例简介】是对之前一个资源的补充,之前少了一些内容,但是没办法修改所以就重传了一份。多了一张图片和一个帮助文档,介绍怎么修改登陆密码和替换图片,其它也没啥不一样23333.下面是原文档的描述:自己给好朋友制作的一个生日快乐的网站,做完之后... [详细]

  • 生日快乐网站模板HTML(精品制作)(HTML5+CSS3+JS)最近姐姐的生日快到了,想着也没有什么礼物送给她,恰好因为CTF的原因学了点HTML和JavaScript,就做了两个网页,当然因为网页(wo)很(ye)简(bu)单(hui)... [详细]

  • CSS3简单3D旋转画册上次我们简单介绍了c3的一些基础知识,我们今天来做一个小练习;这个简单的案例是3D的一个旋转画册,那么上面是我们的一个效果图,因为不能够传视屏所以就暂时只能够截图来看一下具体结构。正如大家所看见的,该相册由两个正方体... [详细]

  • 实例:3D立方体旋转相册。技术栈:HTML、CSS。_html5css33d旋转html5css33d旋转实例:3D立方体旋转相册技术栈:HTML、CSS效果: 源码:<!DOCTYPEhtml><html>... [详细]

  • 特效描述:3D动画方块翻转动画动画特效css33D翻转动画效果代码结构1.引入CSS2.引入JS3.HTML代码SophiaShowGilrLoremipsumdolorsitamet,consecteturadipiscingelit,... [详细]

  • 用到的知识点最重要的一个属性transform-style:flat|preserve-3d;该属性默认值为flat。当我们指定一个容器的transform-style的属性值为preserve-3d时,容器的子元素便会相对父元素所在平面进... [详细]

  • HTML5文档结构HTML5页面结构HTML5新增结构元素1.header标记2.nav标记3.article标记4.section标记5.aside标记6.footer标记HTML5新增页面元素hgroup标记figure标记与figca... [详细]

  • 一年一度的/520/七夕情人节/女朋友生日/程序员表白,是不是要给女朋友或者正在追求的妹子一点小惊喜呢,今天这篇博客就分享下前端代码如何实现3D立体动态相册。赶紧学会了,来制作属于我们程序员的浪漫吧!❤七夕情人节表白[樱花飘落3D相册],程... [详细]

  • 一段动画,就是一段时间内连续播放n个画面。每一张画面,我们管它叫做“帧”。一定时间内连续快速播放若干个帧,就成了人眼中所看到的动画。同样时间内,播放的帧数越多,画面看起来越流畅。关键帧指的是,在构成一段动画的若干帧中,起到决定性作用的2-3... [详细]

  • html+css+js实现生日快乐代码????超炫酷效果????(含生日背景音乐)❤520/表白/七夕情人节/求婚❤专用炫酷动画网页的源代码程序员爱情❤520/表白/七夕情人节/求婚❤专用html5+css3+js生日快乐网站模板HTML生... [详细]

  • 表格网页标题域标签的使用网页标题美家装饰联系我们网页标题登录界面网页标题问卷调查[HTML]Web前端开发技术16(HTML5CSS3JavaScript)表格课后练习网页标题域标签的使用网页标题美家装饰联系我们网页标题登... [详细]

  • 博主自己学习css3+html5时所记录的笔记,以及练习的大厂项目的资料分享,希望可以帮助到大家。_使用html5结构元素和无序列表布局页面,标题的背景颜色是#e6071b使用css3使用html5结构元素和无序列表布局页面,标题的背景颜... [详细]

  • 项目效果实现原理首先给他一个div盒子,然后在里面给他装8个div装img,给装img的div一个position:absolute,使所有的照片都叠在一起,然后给个transform:translatesZ(px)使图片在对应的角度移动出... [详细]

  • 相关标签
      

    闽ICP备14008679号