原生JS实现不断变化的标签


Posted in Javascript onMay 22, 2017

上图为博客右侧截取的GIF图,下图为代码效果

 原生JS实现不断变化的标签

原生JS实现不断变化的标签

HTML:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>SlideFont</title>
</head>
<body>
 <div class="F-SlideFont-Box">
  <dl class="F-SlideFont-Box-Tag">
   <dd class="F-SlideFont-Tag">谷歌</dd>
   <dd class="F-SlideFont-Tag">百度</dd>
   <dd class="F-SlideFont-Tag">阿里</dd>
   <dd class="F-SlideFont-Tag">苹果</dd>
   <dd class="F-SlideFont-Tag">三星</dd>
   <dd class="F-SlideFont-Tag">耳机</dd>
   <dd class="F-SlideFont-Tag">音箱</dd>
   <dd class="F-SlideFont-Tag">电视</dd>
   <dd class="F-SlideFont-Tag">谷歌</dd>
   <dd class="F-SlideFont-Tag">百度</dd>
   <dd class="F-SlideFont-Tag">阿里</dd>
  </dl>
 </div>
</body>
</html>

css:

<style>
  .F-SlideFont-Box * { margin: 0; padding: 0; border: none; list-style: none; }
  .F-SlideFont-Box { width: 300px; height: 300px; border: 1px black solid; position: relative; }
  .F-SlideFont-Box-Tag { width: 90%; height: 90%; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; }
  .F-SlideFont-Tag { position: absolute; display: block; padding: 3px 15px; background-color: #0078F7; border-radius: 10%; color: white; transition:all 1s linear; z-index: 0; transition: all .6s; cursor: pointer; }
 </style>

JS:

<script src="js/GlunefishLibrary.js"></script>  // 这里引入的是我发过的随随机数
<script>

 var tagObj = document.getElementsByClassName('F-SlideFont-Tag'),
  offset = true;

 for(var i=0;i<tagObj.length;i++){
  (function(i){
   tagObj[i].onmouseover = function(){
   offset = false;
   index = parseInt(this.style.zIndex);
   this.style.zIndex = 9999;
   }
   tagObj[i].onmouseout = function(){
   offset = true;
   this.style.zIndex = index;
   }
  })(i);
 }

 setInterval(PreSeting,5000)


 function PreSeting(){
  if(offset){
   for(var i=0;i<tagObj.length;i++){
    tagObj[i].style.left = F_getSJS(200,20,10) + 'px';   //F_getSJS() 来自前面引入的 glunefishLibrary.js , 具体请移步到我之前的取随机数随笔
    tagObj[i].style.top = F_getSJS(200,20,10) + 'px';
    tagObj[i].style.backgroundColor = 'rgb(' + F_getSJS(256,-1,5) + ',' + F_getSJS(256,-1,10) + ',' +  F_getSJS(256,-1,15) + ')';
    tagObj[i].style.zIndex = F_getSJS(200,0,16);
   }
  }

 }


</script>

此效果主要通过间隔取两数之间的随机数来改变标签的样式。

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

Javascript 相关文章推荐
实现51Map地图接口(示例代码)
Nov 22 Javascript
jquery插件jquery倒计时插件分享
Dec 27 Javascript
JavaScript异步回调的Promise模式封装实例
Jun 07 Javascript
js实现商城星星评分的效果
Dec 29 Javascript
基于jQuery的网页影音播放器jPlayer的基本使用教程
Mar 08 Javascript
JavaScript利用Date实现简单的倒计时实例
Jan 12 Javascript
一种angular的方法级的缓存注解(装饰器)
Mar 13 Javascript
vue 表单输入格式化中文输入法异常问题
May 30 Javascript
使用Vue 实现滑动验证码功能
Jun 27 Javascript
Preload基础使用方法详解
Feb 03 Javascript
JavaScript函数Call、Apply原理实例解析
Feb 17 Javascript
微信小程序onShareTimeline()实现分享朋友圈
Jan 07 Javascript
jQuery实现简单的滑动导航代码(移动端)
May 22 #jQuery
vue2.0 与 bootstrap datetimepicker的结合使用实例
May 22 #Javascript
Vue实现动态显示textarea剩余字数
May 22 #Javascript
bootstrap栅格系统示例代码分享
May 22 #Javascript
vue+axios实现登录拦截的实例代码
May 22 #Javascript
详解Angular2 关于*ngFor 嵌套循环
May 22 #Javascript
bootstrap模态框远程示例代码分享
May 22 #Javascript
You might like
php 正确解码javascript中通过escape编码后的字符
2010/01/28 PHP
thinkphp使用literal防止模板标签被解析的方法
2014/11/22 PHP
PHP解密Unicode及Escape加密字符串
2015/05/17 PHP
php解析xml 的四种简单方法(附实例)
2016/07/11 PHP
php实现的顺序线性表示例
2019/05/04 PHP
通过PHP实现获取访问用户IP
2020/05/09 PHP
JavaScript 的方法重载效果
2009/08/07 Javascript
Javascript 鼠标移动上去 滑块跟随效果代码分享
2013/11/23 Javascript
jQuery简单几行代码实现tab切换
2015/03/10 Javascript
Jquery实现遮罩层的方法
2015/06/08 Javascript
JQ选择器_选择同类元素的第N个子元素的实现方法
2016/09/08 Javascript
JavaScript方法_动力节点Java学院整理
2017/06/28 Javascript
Vue 实现双向绑定的四种方法
2018/03/16 Javascript
JavaScript 对引擎、运行时、调用堆栈的概述理解
2018/10/22 Javascript
在NPM发布自己造的轮子的方法步骤
2019/03/09 Javascript
vue遍历生成的输入框 绑定及修改值示例
2019/10/30 Javascript
Vue+Vuex实现自动登录的知识点详解
2020/03/04 Javascript
JavaScript随机数的组合问题案例分析
2020/05/16 Javascript
jQuery编写QQ简易聊天框
2020/08/27 jQuery
[01:06:19]DOTA2-DPC中国联赛定级赛 LBZS vs SAG BO3第二场 1月8日
2021/03/11 DOTA
简单讲解Python中的闭包
2015/08/11 Python
一步步教你用Python实现2048小游戏
2017/01/19 Python
python实现从wind导入数据
2019/12/03 Python
python PIL/cv2/base64相互转换实例
2020/01/09 Python
sklearn的predict_proba使用说明
2020/06/28 Python
scrapy redis配置文件setting参数详解
2020/11/18 Python
在pycharm创建scrapy项目的实现步骤
2020/12/01 Python
值传递还是引用传递
2015/02/08 面试题
商务英语专业自荐信
2013/10/14 职场文书
测绘专业大学生职业生涯规划书
2014/02/10 职场文书
分公司负责人任命书
2014/06/04 职场文书
银行求职自荐书
2014/06/25 职场文书
2014年教师党员自我评价范文
2014/09/22 职场文书
小学教师工作总结2015
2015/04/07 职场文书
解决linux下redis数据库overcommit_memory问题
2022/02/24 Redis
nginx 配置缓存
2022/05/11 Servers