教你用javascript实现随机标签云效果_附代码


Posted in Javascript onMarch 16, 2016

标签云是一套相关的标签以及与此相应的权重。典型的标签云有30至150个标签。权重影响使用的字体大小或其他视觉效果。同时,直方图或饼图表是最常用的代表约12种不同的权数。因此,标签云彩能代表更多的权,尽管不那么准确。此外,标签云通常是可以交互的:标签是典型的超链接,让用户可以仔细了解他们的内容。
 
大概可以理解为一堆相关或者不相关的标签混到一块,根据不同的重要程度,或者其他维度的不同来为每个标签设置不同的样式已凸显他们的不同,这样的一堆标签在一起就是我们通常说的标签云了。
 
下面我们大概说一下标签云实现的原理:
明白了标签云是咋回事儿那么实现起来就简单了,其实就是根据每个标签的不同的重要性设置不同的样式就可以了。
这里我们使用随机数实现一个简单的标签云,不是根据某些维度来实现,纯粹的随机样式。这边标签云实际是一堆a标签,然后随机设置颜色和字体大小,当然字体大小有个最大最小限制的。
1、我们设置了一个取随机数函数,和一个随机颜色函数,通过这两个函数为标签设置样式。
2、我们把所有的a标签循环,然后利用步骤一里边的随机数,和随机颜色设置这些标签的字体大小和颜色。
 
查看效果如下:

教你用javascript实现随机标签云效果_附代码

一个简单的标签云就完事了。

其实我们还可以吧样式设置到样式文件,然后通过为a标签设置class来设置a标签的样式,这样灵活性更大。

如果需要根据某些维度来设置的话,那么可以给a标签设置好这种维度的属性,然后根据这些属性来设置样式。

下面看代码:

html代码:

<div id="wrap">
 <a href="#">web标准学习</a>
 <a href="#">css</a>
 <a href="#">javascript</a>
 <a href="#">html5</a>
 <a href="#">canvas</a>
 <a href="#">video</a>
 <a href="#">audio</a>
 <a href="#">jQuery</a>
 <a href="#">jQuerymobile</a>
 <a href="#">flash</a>
 <a href="#">firefox</a>
 <a href="#">chrome</a>
 <a href="#">opera</a>
 <a href="#">IE9</a>
 <a href="#">css3.0</a>
 <a href="#">andriod</a>
 <a href="#">apple</a>
 <a href="#">google</a>
 <a href="#">jobs</a>
 </div>

javascript代码:

window.onload=function(){
 var obox=document.getElementById("wrap");
 var obj=obox.getElementsByTagName("a");
 //随机方法
 function rand(num){
  return parseInt(Math.random()*num+1);
 }
 //随机颜色值
 function randomcolor(){
  var str=Math.ceil(Math.random()*16777215).toString(16);
  if(str.length<6){
   str="0"+str;
  }
  return str;
 }
 //循环
 for( len=obj.length,i=len;i--;){
  obj[i].className="color"+rand(5);
  obj[i].style.zIndex=rand(5);
  obj[i].style.fontSize=rand(12)+12+"px";
  // obj[i].style.background="#"+randomcolor();
  obj[i].style.color="#"+randomcolor();
  obj[i].onmouseover=function(){
   this.style.background="#"+randomcolor();
  }
  obj[i].onmouseout=function(){
   this.style.background="none";
  }
 }
}

以上这篇教你用javascript实现随机标签云效果_附代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery 全选效果实现代码
Mar 23 Javascript
jquery及js实现动态加载js文件的方法
Jan 21 Javascript
详解axios 全攻略之基本介绍与使用(GET 与 POST)
Sep 15 Javascript
在vue中使用公共过滤器filter的方法
Jun 26 Javascript
详解微信JS-SDK选择图片遇到的坑
Aug 15 Javascript
vue中Element-ui 输入银行账号每四位加一个空格的实现代码
Sep 14 Javascript
一文读懂ES7中的javascript修饰器
May 06 Javascript
vue实现购物车结算功能
Jun 18 Javascript
vue 子组件修改data或调用操作
Aug 07 Javascript
js 函数性能比较方法
Aug 24 Javascript
全局安装 Vue cli3 和 继续使用 Vue-cli2.x操作
Sep 08 Javascript
解决Vue+SpringBoot+Shiro跨域问题
Jun 09 Vue.js
浅析AMD CMD CommonJS规范--javascript模块化加载学习心得总结
Mar 16 #Javascript
js纯数字逐一停止显示效果的实现代码
Mar 16 #Javascript
神奇!js+CSS+DIV实现文字颜色渐变效果
Mar 16 #Javascript
js获取时间精确到秒(年月日)
Mar 16 #Javascript
js实现内容显示并使用json传输数据
Mar 16 #Javascript
javascript中arguments,callee,caller详解
Mar 16 #Javascript
Bootstrap每天必学之滚动监听
Mar 16 #Javascript
You might like
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装(win+linux)
2012/05/05 PHP
JavaScript 判断浏览器是否支持SVG的代码
2013/03/21 Javascript
jquery三个关闭弹出层的小示例
2013/11/05 Javascript
jquery实现省市select下拉框的替换(示例代码)
2014/02/22 Javascript
jquery ajax 如何向jsp提交表单数据
2015/08/23 Javascript
javascript中的previousSibling和nextSibling的正确用法
2015/09/16 Javascript
Json解析的方法小结
2016/06/22 Javascript
Augularjs-起步详解
2016/07/08 Javascript
JS判断form内所有表单是否为空的简单实例
2016/09/09 Javascript
js Date()日期函数浏览器兼容问题解决方法
2017/09/12 Javascript
利用adb shell和node.js实现抖音自动抢红包功能(推荐)
2018/02/22 Javascript
vue todo-list组件发布到npm上的方法
2018/04/04 Javascript
关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
2018/09/04 Javascript
vue cli3.0 引入eslint 结合vscode使用
2019/05/27 Javascript
js回溯法计算最佳旅行线路代码实例
2019/09/11 Javascript
Vue 解决路由过渡动画抖动问题(实例详解)
2020/01/05 Javascript
详解React中共享组件逻辑的三种方式
2021/02/02 Javascript
python实现提取百度搜索结果的方法
2015/05/19 Python
python+opencv轮廓检测代码解析
2018/01/05 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
2019/07/22 Python
Python中typing模块与类型注解的使用方法
2019/08/05 Python
记一次pyinstaller打包pygame项目为exe的过程(带图片)
2020/03/02 Python
Python3标准库glob文件名模式匹配的问题
2020/03/13 Python
Python socket处理client连接过程解析
2020/03/18 Python
python获取整个网页源码的方法
2020/08/03 Python
Canvas与图片压缩的示例代码
2017/11/28 HTML / CSS
维多利亚的秘密官方旗舰店:VICTORIA’S SECRET
2018/04/02 全球购物
澳大利亚在线家具、灯饰和家居装饰店:LivingStyles
2018/11/20 全球购物
德国珠宝和手表在线商店:VALMANO
2019/03/24 全球购物
企划经理的岗位职责
2013/11/17 职场文书
董事长岗位职责
2013/11/30 职场文书
入党积极分子评语
2014/05/04 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
幼儿园开学家长寄语(2016秋季)
2015/12/03 职场文书
javascript数组includes、reduce的基本使用
2021/07/02 Javascript
一次MySQL启动导致的事故实战记录
2021/09/15 MySQL