教你用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的html(data)方法与&amp;lt;script&amp;gt;脚本块的解决方法
Mar 09 Javascript
jQuery之自动完成组件的深入解析
Jun 19 Javascript
firefox浏览器用jquery.uploadify插件上传时报HTTP 302错误
Mar 01 Javascript
JS实现状态栏跑马灯文字效果代码
Oct 24 Javascript
AngularJS Toaster使用详解
Feb 24 Javascript
React-Native中props具体使用详解
Sep 04 Javascript
浅谈vue+webpack项目调试方法步骤
Sep 11 Javascript
vue 指定组件缓存实例详解
Apr 01 Javascript
js+SVG实现动态时钟效果
Jul 14 Javascript
对angularJs中ng-style动态改变样式的实例讲解
Sep 30 Javascript
bootstrap下拉分页样式 带跳转页码
Dec 29 Javascript
vue中echarts的用法及与elementui-select的协同绑定操作
Nov 17 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调用三种数据库的方法(2)
2006/10/09 PHP
ThinkPHP模板中数组循环实例
2014/10/30 PHP
PHP中大于2038年时间戳的问题处理方案
2015/03/03 PHP
session 加入redis的实现代码
2016/07/15 PHP
PHP面向对象五大原则之单一职责原则(SRP)详解
2018/04/04 PHP
Firefox window.close()的使用注意事项
2009/04/11 Javascript
禁止JQuery中的load方法装载IE缓存中文件的方法
2009/09/11 Javascript
javascript下高性能字符串连接StringBuffer类
2010/08/16 Javascript
30个最好的jQuery 灯箱插件分享
2011/04/25 Javascript
javascript 基础篇2 数据类型,语句,函数
2012/03/14 Javascript
原生js实现半透明遮罩层效果具体代码
2013/06/06 Javascript
jsp js鼠标移动到指定区域显示选项卡离开时隐藏示例
2013/06/14 Javascript
jquery如何根据值设置默认的选中项
2014/03/17 Javascript
用模版生成HTML的的框架jquery.tmpl使用详解
2015/01/07 Javascript
javascript实现漂亮的拖动层,窗口拖拽特效
2015/04/24 Javascript
JavaScript实现选择框按比例拖拉缩放的方法
2015/08/04 Javascript
jQuery EasyUI 入门必看
2016/06/03 Javascript
jQuery实现的导航下拉菜单效果
2016/07/04 Javascript
使用BootStrapValidator完成前端输入验证
2016/09/28 Javascript
jQuery的ready方法实现原理分析
2016/10/26 Javascript
JS焦点图,JS 多个页面放多个焦点图的实例
2016/12/08 Javascript
Vue实现动态显示textarea剩余字数
2017/05/22 Javascript
vue动画打包后失效问题的解决方法
2018/09/18 Javascript
微信小程序实现导航栏和内容上下联动功能代码
2020/06/29 Javascript
[00:23]DOTA2群星共贺开放测试 25日无码时代来袭
2013/09/23 DOTA
[09:13]2014DOTA2国际邀请赛 中国区预选赛coser表演
2014/05/23 DOTA
matplotlib 纵坐标轴显示数据值的实例
2018/05/25 Python
Django接收自定义http header过程详解
2019/08/23 Python
python自动结束mysql慢查询会话的实例代码
2019/10/27 Python
在django项目中导出数据到excel文件并实现下载的功能
2020/03/13 Python
matplotlib部件之矩形选区(RectangleSelector)的实现
2021/02/01 Python
中国排名第一的外贸销售网站:LightInTheBox.com(兰亭集势)
2016/10/28 全球购物
最新个人职业生涯规划书
2014/01/22 职场文书
小小的船教学反思
2014/02/21 职场文书
婚礼主持词开场白
2014/03/13 职场文书
少先队辅导员事迹材料
2014/12/24 职场文书