js实现鼠标点击页面弹出自定义文字效果


Posted in Javascript onDecember 24, 2019

本文实例为大家分享了js鼠标点击页面弹出文字的具体代码,供大家参考,具体内容如下

效果:

js实现鼠标点击页面弹出自定义文字效果

实现代码:

(function(e){
 // 点击事件触发生生元素等一系列动作的初始状态
 var bombFlag = true;
 // body节点
 var elBody = document.getElementsByTagName("body")[0];
 // 初始化文字数组下标
 var a_idx = 0;
 elBody.onclick = function(e) {
 if(bombFlag){
  // 坐标
  var ev = e||event,//  IE浏览器兼容
  x = ev.clientX,
     y = ev.clientY;
   // 随机产生文字颜色
  var color1 = Math.floor((Math.random()*255));
  var color2 = Math.floor((Math.random()*255));
  var color3 = Math.floor((Math.random()*255));
  // 初始化定时器
   var _timer = null;
   // 文字数组
   var a = new Array("乐观", "❤" ,"积极", "向上", "自由", "正能量","(*^?^*)", "元气满满", "开心" ,"快乐", "善良", "可爱", "暴富", "暴瘦","❤");
   // 创建节点
   var elSpan = document.createElement("span");
   // 随机节点内容
   a_idx = (a_idx + 1) % a.length;
   // 添加内容到节点
   elSpan.innerHTML = a[a_idx];
   // 初始节点化样式
   elSpan.style.zIndex = 999;
   elSpan.style.position = "fixed";
   elSpan.style.top = y -20 + "px",
   elSpan.style.left = x -10 + "px";
   elSpan.style.color = 'rgb('+color1+','+color2+','+color3+')';
   elSpan.style.fontWeight = "bold";
   elSpan.className = "floatSpan";
   // 将元素追加到body中
   elBody.appendChild(elSpan);
   // 获取追加后的节点
   var el = document.getElementsByClassName("floatSpan")[0];
   // 初始化需要渐变的变量值
   // top值
   var cur_y = y - 20;
   // 透明度
   var cur_opacity = 1;
   // 字体大小
   var cur_fontSize = 14;
   // 创建定时器
   _timer = setInterval(function(){
    // 渐变变量
    cur_y += -10;
    cur_opacity -= 0.1;
    cur_fontSize += 1;
    // 渐变变量赋值(因为有单位的关系 所以不能直接加减 通过中间变量来赋值)
    el.style.top = cur_y + "px";
    el.style.opacity = cur_opacity;
    el.style.fontSize = cur_fontSize + "px";
   },50);
   // 时间到了之后清空定时器 清除刚才添加的元素 并且恢复点击触发事件
   setTimeout(function(){
    clearInterval(_timer);
    elBody.removeChild(el);
    bombFlag = true;
   },500);
 }
 // 暂停点击触发事件
   bombFlag = false;
 };
})();

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

Javascript 相关文章推荐
JavaScript获取并更改input标签name属性的方法
Jul 02 Javascript
初识angular框架后的所思所想
Feb 19 Javascript
BootStrap扔进Django里的方法详解
May 13 Javascript
Angular2.js实现表单验证详解
Jun 23 Javascript
详解vue 单页应用(spa)前端路由实现原理
Apr 04 Javascript
微信小程序自定义prompt组件步骤详解
Jun 12 Javascript
vue的token刷新处理的方法
Jul 17 Javascript
Vue实现table上下移动功能示例
Feb 21 Javascript
koa-router路由参数和前端路由的结合详解
May 19 Javascript
JavaScript实现页面中录音功能的方法
Jun 04 Javascript
微信小程序身份证验证方法实现详解
Jun 28 Javascript
解决vue-router 二级导航默认选中某一选项的问题
Nov 01 Javascript
javascript实现鼠标点击生成文字特效
Dec 24 #Javascript
Javascript实现鼠标点击冒泡特效
Dec 24 #Javascript
javascript实现点击星星小游戏
Dec 24 #Javascript
JS实现小星星特效
Dec 24 #Javascript
JS实现星星海特效
Dec 24 #Javascript
JS实现图片切换特效
Dec 23 #Javascript
JS实现简易留言板特效
Dec 23 #Javascript
You might like
php缓冲 output_buffering的使用详解
2013/06/13 PHP
php获取网页上所有链接的方法
2015/04/03 PHP
PHP获取不了React Native Fecth参数的解决办法
2016/08/26 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
2020/04/02 PHP
javascript学习笔记(九)javascript中的原型(prototype)及原型链的继承方式
2011/04/12 Javascript
基于jquery自己写tab滑动门(通用版)
2012/10/30 Javascript
基于jQuery实现下拉收缩(展开与折叠)特效
2012/12/25 Javascript
js通过地址栏给action传值(中文乱码全是问号)
2013/05/02 Javascript
JS幻灯片可循环播放可平滑旋转带滚动导航(自写)
2013/08/05 Javascript
js关于精确计算和数值格式化以及直接引js文件
2014/01/28 Javascript
一系列Bootstrap导航条使用方法分享
2016/04/29 Javascript
在JavaScript中模拟类(class)及类的继承关系
2016/05/20 Javascript
深入理解js中this的用法
2016/05/28 Javascript
用Angular实时获取本地Localstorage数据,实现一个模拟后台数据登入的效果
2016/11/09 Javascript
jquery实现一个全局计时器(商城可用)
2017/06/30 jQuery
浅谈vue使用axios的回调函数中this不指向vue实例,为undefined
2020/09/21 Javascript
[01:08:43]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第一场 1月9日
2021/03/11 DOTA
Python复制文件操作实例详解
2015/11/10 Python
python Pygame的具体使用讲解
2017/11/03 Python
Python之用户输入的实例
2018/06/22 Python
Django REST framework视图的用法
2019/01/16 Python
在django中自定义字段Field详解
2019/12/03 Python
python设置代理和添加镜像源的方法
2020/02/14 Python
Python中pyecharts安装及安装失败的解决方法
2020/02/18 Python
Selenium 配置启动项参数的方法
2020/12/04 Python
中国最大隐形眼镜网上商城:视客眼镜网
2016/10/30 全球购物
Structs界面控制层技术
2013/10/11 面试题
幼儿园的门卫岗位职责
2014/04/10 职场文书
员工试用期考核自我鉴定
2014/04/13 职场文书
2014离婚协议书范文(3篇)
2014/11/29 职场文书
离婚被告答辩状
2015/05/22 职场文书
《有余数的除法》教学反思
2016/02/22 职场文书
意外事故赔偿协议书
2016/03/22 职场文书
优秀新员工事迹材料
2019/05/13 职场文书
nginx常用命令放入shell脚本详解
2021/03/31 Servers
教你使用Python获取QQ音乐某个歌手的歌单
2022/04/03 Python