教你用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 相关文章推荐
有趣的javascript数组定义方法
Sep 10 Javascript
jquer之ajaxQueue简单实现代码
Sep 15 Javascript
javascript 快速排序函数代码
May 30 Javascript
原生javascript兼容性测试实例
Jul 01 Javascript
JavaScript给url网址进行encode编码的方法
Mar 18 Javascript
javascript实现复选框选中属性
Mar 25 Javascript
JavaScript实现仿新浪微博大厅和腾讯微博首页滚动特效源码
Sep 15 Javascript
全面了解JavaScirpt 的垃圾(garbage collection)回收机制
Jul 11 Javascript
BootStrap TreeView使用实例详解
Nov 01 Javascript
vue+echarts实现可拖动节点的折线图(支持拖动方向和上下限的设置)
Apr 12 Javascript
scrapyd schedule.json setting 传入多个值问题
Aug 07 Javascript
Vue组件间数据传递的方式(3种)
Jul 13 Javascript
浅析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
ThinkPHP提示错误Fatal error: Allowed memory size的解决方法
2015/02/12 PHP
PHP基于PDO实现的SQLite操作类【包含增删改查及事务等操作】
2017/06/21 PHP
PHP实现的mysql操作类【MySQL与MySQLi方式】
2017/10/07 PHP
php记录搜索引擎爬行记录的实现代码
2018/03/02 PHP
php接口实现拖拽排序功能
2018/04/23 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
2018/06/13 PHP
PHP操作路由器实现方法示例
2019/04/27 PHP
PHP使用反向Ajax技术实现在线客服系统详解
2019/07/01 PHP
jquery中ajax学习笔记4
2011/10/16 Javascript
js调用浏览器打印模块实现点击按钮触发自定义函数
2014/03/21 Javascript
最短的IE判断var ie=!-[1,]分析
2014/05/28 Javascript
jQuery实现响应浏览器缩放大小并改变背景颜色
2014/10/31 Javascript
Javascript与jQuery方法的隐藏与显示
2015/01/19 Javascript
JavaScript取得键盘按下方向键是哪个的方法
2015/08/04 Javascript
Seajs 简易文档 提供简单、极致的模块化开发体验
2016/04/13 Javascript
用jQuery获取table中行id和td值的实现代码
2016/05/19 Javascript
AngularJS教程 ng-style 指令简单示例
2016/08/03 Javascript
ES6中Symbol类型用法实例详解
2017/04/06 Javascript
微信小程序实现多选框全选与反全选及购物车中删除选中的商品功能
2019/12/17 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
Python Sleep休眠函数使用简单实例
2015/02/02 Python
在Python中编写数据库模块的教程
2015/04/29 Python
Python实现的插入排序算法原理与用法实例分析
2017/11/22 Python
解决python有时候import不了当前的包问题
2019/08/28 Python
python实现canny边缘检测
2020/09/14 Python
python pygame 愤怒的小鸟游戏示例代码
2021/02/25 Python
纯CSS3实现带动画效果导航菜单无需js
2013/09/27 HTML / CSS
贝尔帐篷精品店:Bell Tent Boutique
2019/06/12 全球购物
德国滑雪和户外用品网上商店:XSPO
2019/10/30 全球购物
几道数据库的概念性面试题
2014/05/30 面试题
优秀应届生推荐信
2013/11/09 职场文书
教师节倡议书
2014/08/30 职场文书
写给妈妈的感谢信
2015/01/22 职场文书
英语读书笔记
2015/07/02 职场文书
MySQL RC事务隔离的实现
2022/03/31 MySQL
青岛市的收音机研制与生产
2022/04/07 无线电